更多"请编写一个函数proc( ),它的功能是:比较两个字符串的长度(不得调"的相关试题:
[多项选择]请编写函数proc( ),该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。
例如,若字符串数组中的M个字符串为:
A. 则合并后的字符串内容应该是BCDEFGCDEFGHI
B. void main()char str[M][N]=("", "BCDEFG", "CDEFGHI"), i;
[简答题]假定输入的字符串中只包含字母和*号。请编写函数proc( ),它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参m给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用c语言提供的字符串函数。
例如,若字符串中的内容为****a*bc*def*g*******,删除后,字符串中的内容则应当是a*bc*def*g。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容。
试题程序:
#include<stdio.h>
#include<conio.h>
void proc(char*a, int m, int h, int e)
void main( )
char s[81], *t, *f;
int m=0, tn=0, fn=0;
printf("Enter a string: /n");
gets(s);
t=f=s;
while(*t)
t++; m++; ) //m为字符串的长度
t--; //指针t指向字符串尾部
while(*t==’*’)
t--; tn++;
//指针t指向最后一个字母,tn统计尾部’*’的个数
while(*f==’*’)
f++; fn++;
//指针f指向第一个字母,tn统计前导’*’的个数
proc(s, m, fn, tn);
printf("The string after deleted: /n");
puts(s); )
[简答题]请编写一个函数proc( ),它的功能是:将str所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。
例如,若输入abcde123, 则应输出aBcDe123。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void proc(char*str)
void main( )
char tt[81];
system ("CLS");
printf("/nPlease enter an string within 80 characters: /n");
gets(tt);
printf("/n/nAfter changing, the string / %s", tt);
proc(tt);
printf("/nbecomes/n %s/n", tt);
[多项选择]请编写函数proc( ),它的功能是:求出str所指字符串中指定字符的个数,并返回此值。
例如,若输入字符串12341234123,输入字符4,则输出2。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#define N 81
int proc(char * str, char c)
void main( )
char a[N], ch;
system("CLS");
printf("/nPlease enter a string: ");
gets(a);
printf("/nPlease enter a char: ");
ch=getchar( );
printf("/nThe number of the char is: %d /n", proc(a, ch));
[简答题]有一个字符串,包含n个字符。写一个函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串。要求在主函数中输入字符串及m值并输出复制结果。
[填空题]
以下程序中函数 huiwen 的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串 yes!,否则函数返回字符串 no!,并在主函数中输出,所谓 回文即正向与反向的拼写都一样,例如:adgda。请填空。
#include
char *huiwen(char *str)
{ char *p1,*p2; int i,t=0;
p1=str;p2==_______ ;
for(i=0;i<=strlen(str)/2;i++)
if(*p1++!=*p2--){t=1;break;}
if(=_______ ) return("yes!");
}
main( )
else return("no!");
{ char str[50];
printf("Input:"); scanf("%s",str);
printf("%s/n",=_______ );
}
[填空题]以下程序中函数huiwen的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串yes!,否则函数返回字符串no!,并在主函数中输出,所谓回文即正向与反向的拼写都一样,例如:adgda。请填空。
#include<string.h>
char*huiwen (char*str)
{char*p1,*p2;int i,t=0;
p1=str;p2=【 】。
for(i=0;i<strlen(str)/2;i++)
if(*p1++!=*p2-){t=1;break;}
if(【 】)return("yes"!);
else return("no!");
}
main( )
{char str[50];
printf("Input:");scanf("%s",str);
printf("%s/n",【 】);
}
[简答题]编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为asd asasdfg asd as zx67 asd mklo,子字符串为as,则应当输出6。
注意:部分源程序给出如下。
请勿改动主函数main和具他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <conio.h>
#include <stdio.h>
#include <string.h>
int fun(char *str, char *substr)
main ( )
char str[81],substr[3];
int n;
clrscr ( );
printf ("输入主字符串 ");
gets (str);
printf ("输入子字符串");
gets (substr);
puts (str);
puts (substr);
n=fun (shr, substr);
printf("n=%d/n ",n);