第1题:
下面程序是指从终端读入的20个字符放入字符数组中,然后利用指针变量输出上述字符串,请填空。
#include <stdio.h>
main ()
{ int i; char? s[21],*p;
for (i=0;i<20;i++)
s[i]=getchar ();
s[i]=【6】;
p =【7】
while (*p)putchar? (【8】);
}
第2题:
若有定义语句:char s[100],d[100];int j=0,i=0;且s中已赋字符串,请填空以实现拷贝。(注:不使用逗号表达式)while(s[i]){d[j]=;j++;}d[j]=0;
第3题:
以下能正确定义字符串的语句是
A)char str[]={' \ 064'};
B)char str="kx43";
C)char str=";
D)char str[]="\0";
第4题:
以下语句或语句组中,能正确进行字符串赋值的是( )。
A.char*sp;*sp="right!";
B.char s[10];s="right!";
C.char s[10];*s="right!";
D.char*sp="right!";
第5题:
(30)设有定义:char s[81];int i=10;,以下不能将一行(不超过80个字符)带有空格的字符串真确读入的语句或语句组是
A gets(s)
B)while((s[i++]=getchar())!=”\n”;s=”\0”;
C)scanf(“%s”,s);
D)do{scanf(“%c”,&s);}while(s[i++]!=”\n”);s=”\0”;
第6题:
设有定义:
struct person
{ int ID;char name[12];}p;
请将 scanf("%d", 【 1 2 】 ); 语句补充完整,使其能够为结构体变量 p 的成员 ID 正确读入数据。
第7题:
编写一个函数,从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标志)。
注意:部分源程序给出如下.
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include<conio.h>
include<stdio.h>
include<string.h>
fun(char (*a) [81], int num, char *max)
{
}
main ()
{
char ss[l0] [81],*ps;
int n, i=0;
clrscr();
prlntf("输入若干个字符串");
gets(ss[i]);
puts(ss[i]);
while(!strcmp(ss[i], "****")==0)
/*用****作为结束输入的标志*/
{
i++;
gets(ss[i]);
puts(ss[i]);
}
n=i;
ps=fun(ss,n,&ps);
print~("\nmax=%s\n",ps);
}
第8题:
设有定义 :char s[81];int i=0;, 以下不能将一行 ( 不超过 80 个字符 ) 带有空格的字符串正确读入的语句或语句组是
A)gets(s);
B)while((s[i++]=getchar())!= ' \n ' );s[i]='\0';
C)scanf("%s",s);
D)do{scanf("%c",&s[i]);}while(s[i++]!='\n');s[i]='\0';
第9题:
若已包括头文件<string.h>且已有定义char s1[18],s2={"ABCDE"}和int i,现要将字符串“ABCDE”赋给s1,下列语句错误的是( )。
A.strcpy(s1,s2)
B.strcpy(sl,"ABCDE");
C.s1="ABCDE";
D.for(i=0;i<6;i++) s1[i]=s2[i];
第10题:
编写一个函数,从传人的M个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标志)。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填人所编写的若干语句。 试题程序: include<stdio.h> include<string.h> include<conio.h> char*proc(char(*a)[81],int num) { } void main { char ss[l0][81],*max; int n,i=0; printf("输入若干个字符串:"); gets(ss[i]); puts(ss[i]); while(!strcmp(ss[i],"****")= =0) { i++: gets(ssEi]); puts(ss[i]); } n=i: max=proe(SS,n); printf("\nmax=%s\n",max); }