好文档 - 专业文书写作范文服务资料分享网站

噶米华为最新笔试题 - 编程题及答案

天下 分享 时间: 加入收藏 我要投稿 点赞

问题:

输入一个字符串,用指针求出字符串的长度。

答案:

#include

int main() {

char str[20], *p; int length=0;

printf(“Please input a string: ”); gets(str);

p=str;

while(*p++) {

length++; }

printf(“The length of string is %d\\n”, length);

return 0; }

问题:使用C语言实现字符串中子字符串的替换

描述:编写一个字符串替换函数,如函数名为 StrReplace(char* strSrc, char* strFind, char* strReplace),strSrc为原字符串,strFind是待替换的字符串,strReplace为替换字符串。

举个直观的例子吧,如:“ABCDEFGHIJKLMNOPQRSTUVWXYZ”这个字符串,把其中的“RST”替换为“ggg”这个字符串,结果就变成了:

ABCDEFGHIJKLMNOPQgggUVWXYZ

答案一:

#include #include

void StrReplace(char* strSrc, char* strFind, char* strReplace); #define M 100;

void main()

{char s[]=\char s1[]=\char s2[]=\

StrReplace(s,s1,s2); printf(\}

void StrReplace(char* strSrc, char* strFind, char* strReplace) {

int i=0; int j;

int n=strlen(strSrc); int k=strlen(strFind); for(i=0;i

if(*(strSrc+i)==*strFind) {

for(j=0;j

if(*(strSrc+i+j)==*(strFind+j)) {

*(strSrc+i+j)=*(strReplace+j); }

else continue; } } } }

答案二:

#include #define MAX 100

StrReplace(char *s, char *s1, char *s2) { char *p;

for(; *s; s++) {

for(p = s1; *p && *p != *s; p++); if(*p) *s = *(p - s1 + s2); } }

int main() {

char s[MAX]; //s是原字符串 char s1[MAX], s2[MAX]; //s1是要替换的 //s2是替换字符串

puts(\ scanf(\

puts(\ scanf(\

puts(\ scanf(\

StrReplace(s, s1, s2);

puts(\ printf(\

return 0; }

答案三:

#include #include #include #define M 100

void StrReplace(char* strSrc, char* strFind, char* strReplace);

int main() {

char s[]=\ char s1[]=\ char s2[]=\

StrReplace(s,s1,s2); printf(\

return 0; }

void StrReplace(char* strSrc, char* strFind, char* strReplace) {

while(*strSrc != '\\0')

{ } }

问题:

if(*strSrc == *strFind) {

if(strncmp(strSrc,strFind,strlen(strFind)) == 0 ) {

int i = strlen(strFind); int j = strlen(strReplace); printf(\ char *q = strSrc + i; printf(\

while((*strSrc++ = *strReplace++) != '\\0'); printf(\ printf(\

while((*strSrc++ = *q++) != '\\0'); } else {

strSrc++; } } else {

strSrc++; }

编写一个程序实现功能:将字符串”Computer Secience”赋给一个字符数组,然后从第一个字母开始间隔的输出该串,用指针完成。

答案:

#include #include

int main() {

char str[]=”Computer Science”; int flag=1; char *p=str;

while(*p)

{

if ( flag ) {

printf(“%c”,*p); }

flag = (flag + 1) % 2; p++; }

printf(“\\n”); return 0; }

问题:使用C语言实现字符串中子字符串的替换

描述:编写一个字符串替换函数,如函数名为 StrReplace(char* strSrc, char* strFind, char* strReplace),strSrc为原字符串,strFind是待替换的字符串,strReplace为替换字符串。

举个直观的例子吧,如:“ABCDEFGHIJKLMNOPQRSTUVWXYZ”这个字符串,把其中的“RST”替换为“ggg”这个字符串,结果就变成了:

ABCDEFGHIJKLMNOPQgggUVWXYZ

答案一:

#include #include

void StrReplace(char* strSrc, char* strFind, char* strReplace); #define M 100; void main()

{char s[]=\char s1[]=\char s2[]=\

StrReplace(s,s1,s2); printf(\}

void StrReplace(char* strSrc, char* strFind, char* strReplace) {

int i=0; int j;

int n=strlen(strSrc); int k=strlen(strFind); for(i=0;i

噶米华为最新笔试题 - 编程题及答案

问题:输入一个字符串,用指针求出字符串的长度。答案:#includeintmain(){charstr[20],*p;intlength=0;printf(“Pleaseinputastring:”);gets(str);
推荐度:
点击下载文档文档为doc格式
8uyan82cwq6gjog0oh073pit886azp004si
领取福利

微信扫码领取福利

微信扫码分享