熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > C語言試題大全一

C語言試題大全一

作者: 時間:2016-11-24 來源:網絡 收藏
1. 寫一函數,實現刪除字符串str1中含有的字符串str2.

/* 用遞歸做 */
void deletesubstr(char* str1, const char* str2)
{
int len=strlen(str1);
char* newstr;
char* sp;
if(str1==NULL||str2==NULL)
return;
if(strlen(str1) return;
if(sp=strstr(str1,str2))
{
newstr=malloc(len+1);
strncpy(newstr,str,sp-str);
strcpy(newstr+(sp-str),sp+strlen(str2));
strcpy(str1,newstr);
free(newstr);
deletesubstr(str1,str2);
}
else
return;
}

2.雅虎筆試題(字符串操作)
給定字符串A和B,輸出A和B中的最大公共子串。
比如A="aocdfe" B="pmcdfa" 則輸出"cdf"

答案:
//Author: azhen
#include
#include
#include

char *commanstring(char shortstring[], char longstring[])
{
int i, j;

char *substring=malloc(strlen(shortstring)+1);

if(strstr(longstring, shortstring)!=NULL) //如果……,那么返回shortstring
return shortstring;

for(i=strlen(shortstring)-1;i>0; i--) //否則,開始循環(huán)計算
{
for(j=0; j<=strlen(shortstring)-i; j++){
memcpy(substring, &shortstring[j], i); // 從最長的字符串開始
substring[i]=