第1题
第2题
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include<stdio.h>
/*************found************/
void fun(char p)
{
char min,*q;
int i=0;
min=p[i];
while(p[i]!=0)
{
if(min>p[i])
{
/*************found*************/
p=q+i;
min=p[i];
}
i++;
}
while(q>p)
{*q=*(q-1);
q--;
}
p[0]=min;
}
main()
{
char str[80];
printf("Enter a string:");
gets(str);
printf("\nThe original string:");
puts(str);
fun(str);
printf("\nThe string after moving:");
puts(str);
printf("\n\n");
}
第3题
输入5个国名,编程找出并输出按字典顺序排在最前面的国名。 提示:所谓字典顺序就是将字符串按由小到大的顺序排列,因此找出按字典顺序排在最前面的国名指的就是最小的字符串。 在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include <stdio.h> #include <string.h> #define N 80 int MinString(char str[][N], int n); int main() { int n=5, min, i; char str[5][N]; printf("Input five countries' names:\n"); for (i=0; i <n; i++) { gets(str[i]); } min="MinString(str," n); printf("the minimum is:%s\n", ________); return 0; * 函数功能:找出并返回按字典顺序排在最前面的字符串 int minstring(char str[][n], n) i, minindex; char min[n]; ___________; minindex="i;" for (i="1;" if (_______________) ____________; 返回最小的字符串在二维字符数组中的位置> A、第15行: str[min] 第24行: strcpy(min, str[0]) 第29行: strcmp(str[i], min) < 0 第31行: strcpy(min, str[i])
B、第15行: str 第24行: strcpy(min, str[0]) 第29行: str[i] < min 第31行: strcpy(min, str[i])
C、第15行: str[min] 第24行: strcpy(str[0], min) 第29行: strcmp(str[i], min) < 0 第31行: strcpy(str[i], min)
D、第15行: str 第24行: min = str[0] 第29行: strcmp(str[i], min) < 0 第31行: min = str[i]
第4题
第5题
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.
试题程序:
include <conio.h>
include <stdio.h>
include <string.h>
int fun (char *s, char *t)
{int n; char *p, *r;
n=0;
while(*s)
{p=s;
r=t;
while (*r)
/**************found**************/
if(*r==*p) {r++; p++}
else break;
/*************found**************/
if(r=='\0')
n++;
s++;
}
return n;
}
main()
{char s[100], t[100]; int m;
clrscr();
printf("\nPlease enter string s: ");
scanf ("%s",s);
printf("\nPlease enter substring t: ");
scanf ("%s",t);
m=fun (s,t);
printf("\nThe result is: m=%d\n", m);
}
第6题
A.abed
B.abba
C.abc
D.abca
第7题
A.abcd
B.abba
C.abc
D.baca
第8题
/* 【程序填空】 功能:统计一个字符串(长度小于80)中数字字符的个数,并求这些数字字符之数值和。 例如,"123,abc4507hello"中有7个数字字符,其累加和为1+2+3+4+5+0+7=22 -------------------------------------------------------*/ #include<stdio.h> void main() { int k,count,sum,len; char c; char str[80]; sum=0; /***********SPACE***********/ 【?】; /***********SPACE***********/ scanf("【?】",str); len=strlen(str); /***********SPACE***********/ for (k=0;k<【?】;k++) { c="str[k];" if(c>='0' && c<='9') { ++count; ***********space*********** sum="【?】+(c-'0');" }; printf("count="%d,sum=%d",count,sum);" }>
第9题
#include<string.h>
void f(char*p[],int n)
{ char*t;int i,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(p[i],p[j]>0){t=p[i];p[i]=p[j];p[j]
=t;}
}
main
{ char *P[5]={"abe","aabdfg","abbd","dcd-
be","cd"};
f(p,5);
printf("%d\n",strlen(p[1]));
}
程序运行后的输出结果是( )o
A.2
B.3
C.6
D.4
第10题
以下程序的功能是将一个字符串中的大小写字母相互转换后写入文件alp.txt中 #define N 100 #include <iostream> #include <string.h> using namespace std; int main() { FILE *fp; int i; char s[N]; fp =____(1)____; if (fp == NULL) { cout << "can't open alp.txt" << endl; exit(0); } gets(s); ___(2)___; while (s[i] != '\0') { if (s[i] >= 'a'&&s[i] <= 'z') s[i]="s[i]" - 'a' + 'a'; ___(3)___ (s[i]>= 'A'&&s[i] <= 'z') s[i]="s[i]" - 'a' + 'a'; i++; } ___(4)___; fclose(fp); system("pause"); return 0; 补全程序,在答题时,务必在答题框中写好题号和答案,如下: (1): _________ (2): (3): (4):>
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!