#include stdio.h
專注于為中小企業(yè)提供網(wǎng)站設(shè)計制作、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)柯城免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
#include stdlib.h
#include string.h
/*把結(jié)果存到第三個字串*/
void PartString(char *Str1,char *Str2,char *Str3)
{
char *s=Str1,*p=Str3;
int len1=strlen(Str1),len2=strlen(Str2);
int n;
for(s=Str1;sStr1+len1-len2;)
{
if(strncmp(s,Str2,len2))
{
*p++=*s++;
}
else
{
s+=len2;
}
}
for(;sStr1+len1;)
{
*p++=*s++;
}
*p='\0';
}
/*直接在字串1中剔除字串2*/
char* PartoutString(char *Str1,char *Str2)
{
char *s=Str1,buffer[30],*p=buffer;
int len1=strlen(Str1),len2=strlen(Str2);
int n;
for(s=Str1;sStr1+len1-len2;)
{
if(strncmp(s,Str2,len2))
{
*p++=*s++;
}
else
{
s+=len2;
}
}
for(;sStr1+len1;)
{
*p++=*s++;
}
*p='\0';
strcpy(Str1,buffer);
return Str1;
}
int main(void)
{
char Str[]="ABCDEFAABCFGH";
char SubStr[]="ABC";
char PartStr[30];
printf("%s\n",Str);
printf("%s\n",SubStr);
PartString(Str,SubStr,PartStr);
printf("%s\n",PartStr);
printf("\n");
PartoutString(Str,SubStr);
printf("%s\n",PartStr);
system("pause");
return 0;
}
1. 函數(shù)開始的時候這兩句話沒有意義
p=(stud *)malloc(sizeof(stud));
q=(stud *)malloc(sizeof(stud));
你只是用了這兩個指針,為它們分配空間一是沒必要,二是內(nèi)存會泄露
2. 看你的代碼應(yīng)該是有頭結(jié)點的鏈表,搜索的時候p=head;p初始化為了head,指向了頭結(jié)點,搜索的時候應(yīng)該從p-next開始,而你用的while((p!=NULL)(strcmp(p-name,N)!=0)),應(yīng)該用p-next!=NULL。而且后面刪除的時候也刪除的是p-next,所以比較的話也應(yīng)該用p-next:strcmp(p-next-name,N)
c語言去掉字符串的空格函數(shù) void trim(char *s){} 如下:
#include stdio.h
void trim(char *s){
int i,L;
L=strlen(s);
for (i=L-1;i=0;i--) if (s[i]==' ')strcpy(s+i,s+i+1);
}
int main(){
char s[100];
printf("input 1 line string\n");
gets(s);
trim(s);
printf("%s\n",s);
return 0;
}
例如:
input 1 line string
abc 123 XYZ |
輸出:abc123XYZ|
使用系統(tǒng)(CLS);頭文件stdlib的簡單示例。h #包括 stdio。h #包含 stdlib。h int main () {printf ("Hello World! "\ n”);系統(tǒng)(“暫停”);系統(tǒng)(CLS);系統(tǒng)(“暫?!?;返回0;}。
clrscr函數(shù)是C語言的清除函數(shù),它清除屏幕上的輸出,clrscr是clear screen的縮寫。Clrscr不是C語言的標(biāo)準(zhǔn)庫函數(shù),而是TC平臺特有的函數(shù),其他編譯器無法使用。
擴(kuò)展資料:
在C語言中,需要在代碼的開頭定義變量,在代碼的開頭不允許使用表達(dá)式。因此,不允許將調(diào)平函數(shù)放在它的前面。
使用系統(tǒng)(CLS);可以達(dá)到畫面清除的效果,在DOS畫面中。系統(tǒng)功能已經(jīng)包含在標(biāo)準(zhǔn)C庫中,系統(tǒng)調(diào)用是通過命令進(jìn)行的。函數(shù)原型:int system (char * command);參數(shù):字符類型的命令函數(shù):發(fā)出DOS命令。
實例:#include #include int main(void){printf("Hello World!\n");system("PAUSE");//系統(tǒng)PAUSEsystem("CLS");//清屏system("PAUSE");//系統(tǒng)PAUSEreturn 0;}。
參考資料:
百度百科-C語音
void del()
{
STU a[20]; char tname[20];
int i=0,j,n=0;
FILE *fp;
printf("\t\t\t請輸入要刪除的姓名:");
scanf("%s",tname);
/*****以下內(nèi)容是讀取文件信息,并將文件中的信息與用戶輸入的姓名做比較,如果姓名相同,則刪除該學(xué)生信息***/
if((fp=fopen("e:\\file1","rb"))==NULL) //打開文件file1
{printf("error!\n");exit(0);} //打開失敗,報錯并退出系統(tǒng)
while(fread(a[n],sizeof(STU),1,fp)!=0) //打開成功,每次從文件中讀入一個STU結(jié)構(gòu)大小的數(shù)據(jù),并將其存入數(shù)組a[]中。直到文件內(nèi)容結(jié)束。
n++;
/**該循環(huán)用于查找**/
for(i=0;in;i++)
if(strcmp(a[i].name,tname)==0) break; //找到姓名相同的學(xué)生了,結(jié)束循環(huán)。
if(i==n) //找完一遍,沒找到
{ printf("\t\t\t沒有找到!\n");
fclose(fp); //關(guān)閉文件file1
}
else //找到了同姓名的學(xué)生
{
/**該循環(huán)用于刪除該學(xué)生信息**/
for(j=i;jn-1;j++) //從找到該學(xué)生的位置開始,依次把后面的數(shù)據(jù)前移,覆蓋掉前一個
{
a[j]=a[j+1];
}
n=n-1; //學(xué)生總數(shù)減1
/****以下內(nèi)容是更新文件,并提示用戶刪除成功****/
if((fp=fopen("e:\\file1","wb"))==NULL) //再次打開文件file1,把刪除之后的信息保存到文件中
{printf("error!\n");exit(0);}
fwrite(a,sizeof(STU),n,fp); //每次往文件中寫入一個學(xué)生的信息(即一個STU大小)
fclose(fp);
printf("\t\t\t刪除成功!\n");
system("pause"); //頁面顯示諸如“按任意鍵繼續(xù)……”
}
}
樓主的意思是在str1中刪除str2中出現(xiàn)的字符?那么改成:
#includestdio.h
void main ()
{
char str1[9]={'t','i','n','m','f','g','y','f','s'};
char str2[3]={'A','s','g'};
int i,k,l;
for(i=0;i9;i++)
{
l=0;
for(k=0;k3;k++)
{
if (str1[i]=str2[k])
{l=1;break;}
}
if l!=1
printf("%c",str1[i]);
}
}
分享標(biāo)題:c語言去除函數(shù) c語言刪除功能
文章網(wǎng)址:http://muchs.cn/article20/docsdco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、電子商務(wù)、網(wǎng)站內(nèi)鏈、網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)