image

编辑人: 长安花落尽

calendar2025-06-04

message1

visits130

C语言编程笔试题(第四十五套)

编程题:

6.请编写一个函数void fun(char a[],char b[],int n),其功能是:删除一个字符串中指定下标的字符。其中,a指向原字符串,删除后的字符串存放在b所指的数组中,n中存放指定的下标。

例如,输入一个字符串World,然后输入3,则调用该函数后的结果为Word。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

# include <stdio.h>

# include <conio.h>

# define LEN 20

 

void fun(char a[], char b[], int n)

{

}

 

main()

{

char str1[LEN],str2[LEN];

int n;

clrscr() ;

printf(“Enter the string:n”);

gets(str1);

printf(“Enter the position of the string deleted:”);

scanf(“%d”,&n);

fun(str1, str2, n);

printf(“The new string is:%sn”,str2);;

}

 

31.请编写函数fun,其功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。

例如,若s所指字符串中的内容为ABCDEFG123456,其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是246。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

#include <conio.h>

#include <stdio.h>

#include <string.h>

 

void fun(char *s, char t[])

{

}

 

main()

{

char s[100], t[100];

clrscr();

printf(“nPlease enter string S:”);

scanf(“%s”, s);

fun(s, t);

printf(“nThe result is : %sn”, t);

}

 

改错题:

63.下列给定程序中,函数fun的功能是:将字符串p中的所有字符复制到字符串b中,

要求每复制三个字符之后插入一个空格。例如,在调用fun函数之前给字符串a输入

ABCDEFGHIJK,调用函数之后,字符串b中的内容则为ABC DEF GHI JK。

请改正程序中的错误,使它能得出正确结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include  <stdio.h>

void fun(char *p, char *b)

{

int  i, k=0;

while(*p)

{

/********found********/

i=1;

/********found********/

while( i<3||*p )

{

b[k]=*p;

k++;

p++;

i++;

}

/********found********/

if(*p)

{

b[k]=’ ‘ ;

}

}

b[k]=’�’;

}

main()

{

char  a[80],b[80];

printf(“Enter a string:      “);

gets(a);

printf(“The original string:  “);

puts(a);

fun(a,b);

printf(“nThe string after insert space:  “);

puts(b);

printf(“nn”);

}

 

 

69.下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成

大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。例如,若输入I am a student to take the examination,则应输出I Am A Student To Take The Examination。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

试题程序:

#include <ctype.h>

#include <string.h>

#include <stdio.h>

 

/********found********/

upfst ( char p )

{

int k=0;

for ( ; *p; p++ )

if ( k )

{

if ( *p==’ ‘ )

k=0;

}

else

if ( *p!=’ ‘ )

{

k=1;

*p = toupper( *p );

}

}

 

main( )

{

char  chrstr[81];

clrscr();

printf(“nPlease enter an English text line: ” );

gets( chrstr );

printf(“nnBefore changing:n  %s”, chrstr );

upfst( chrstr );

printf(“nAfter changing:n %sn”, chrstr );

}

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:C语言编程笔试题(第四十五套)

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share