- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言的练习综合--EGG
2.输入一个字符数小于 100的不带空格的字符串 string,然后在string所保存字符串中的每
个字符间加一个空格。
原程序:
#in cludestdio.h
#defi ne MAX = 100;
void CopyStri ng(char c[],char s[]);
void In sert(char s[]);
void mai n()
{
char stri ng[MAX];
scan f(%s,stri ng);
In sert(char stri ng[]);
prin tf(%s,stri ng);
}
void CopyStri ng(char c[], char s[])
{
int i;
for (i=0; s[i]!=\0: i++)
{
c[i] = s[i];
}
c[i] = \0;
}
void In sert(char srcStr[])
{
char strTemp[MAX];
int i = 0, j = 0;
CopyStri ng(strTemp, srcStr);
while (srcStr[i] != \0)
{srcStr[i] = strTemp[j];
i++;
j++;
srcStr[i]=;
i++;}
}
改正后:
#includestdio.h
#define MAX 100
void CopyString(char c[],char s[]); void Insert(char s[]);
void main()
{ char string[MAX]; scanf(%s,string); Insert(string); printf(%s,string);
} void CopyString(char c[], char s[]) {
int i;
for (i=0; s[i]!=\0; i++)
{c[i] = s[i];} c[i] = \0;
}
void Insert(char srcSt 叩)
{
char strTemp[MAX];
int i = 0, j = 0;
CopyString(strTemp, srcStr); while (strTemp[j] != \0) { srcStr[i] = strTemp[j]; i++; j++;
srcStr[i]=; i++;
} srcStr[i]=\0;}
这个是我的:
#includestdio.h
#define MAX 100
void CopyString(char c[],char s[]); void Insert(char s[] ,int m);
void main()
{
char string[MAX]; scanf(%s,string); Insert(string,MAX); printf(%s,string);
}
void CopyString(char c[], char s[]) {
int i;
for (i=0; s[i]!=\0; i++)
{c[i] = s[i];}
c[i+1] = \0;
}
void Insert(char srcStr[],int m) {
char strTemp[MAX];
int i = 0, j = 0;
CopyString(strTemp, srcStr); i=0;
while (srcStr[i*2]!=32)
{
srcStr[i] = strTemp[j]; i++;
j++; srcStr[i] =32; i++;
}
}
3?下面函数实现两个字符串大小的比较,函数将两个字符串中第一个出现的不相同字符的
ASII码值之差作为比较的结果返回,当两个字符串完全一样时,返回值为 0。
原程序:
int MyStrcmp(char *p1, char *p2)
{
for (; *p1 = *p2; p1++; p2++)
{
if (*p1 = \0) return 0;
}
retur n p1 - p2;
}
改正后:
int MyStrcmp(char *p1, char *p2)
{
for (; *p1 == *p2; p1++,p2++)
{ if (*p1 == \0) return 0;
}
return (*p1 - *p2);
}
二、阅读程序,在标有下划线的空白处填入适当的表达式或语句, 使程序完整并符合题目要
求。
1.下面的程序计算5! 原程序:
#i nclude stdio.h
fun (i nt n)
{
f *= n;
return f;
}
void mai n()
{int i;
float s;
for (i = 1; i = 5; i +
原创力文档


文档评论(0)