c语言-经典常用-习题

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c语言-经典常用-习题

1.输入一个字符串,将其按给定的长度n格式化并输出,若n=0,则输出原字符串

输入

输入一个字符串

输出

格式化并输出

样例输入

asdfasdf

3

样例输出

asd

fas

df

提示

#include

#include

int main()

{

int n,m,i,j;

char a[10000];

gets(a);

scanf("%d",&m);

n=strlen(a);

if(m==0)

puts(a);

else

{

for(i = 0; i < n; i += m)

{

if(a[i] == '\0')

return 0;

for(j = 0; j < m; ++ j)

{

if(a[i + j] == '\0')

{

printf("\n");

return 0;

}

printf("%c", a[i + j]);

}

printf("\n");

}

}

return 0;

}

2.题目描述

输入一个长度不超过100 的字符串,删除串中的重复字符。

输入

输入要检查的字符串,长度不超过100个字符。例如:abacaeedabcdcd。

输出

删除重复字符后的字符串。例如:abced。

样例输入

saas

样例输出

sa

提示

#include

int main()

{

char a[100];

int i,j,m;

scanf("%s",a);

for(i=0;a[i]!=0;i++)

for(j=i+1;a[j]!=0;j++)

if(a[i]==a[j])

{

for(m=j;a[m]!=0;m++)

{

a[m]=a[m+1];

}

j--;

}

puts(a);

return 0;

}

3.请编写C程序,输入5个不同的且为字符格式的学生编号,将其先由大到小排序,再将最大的学生编号和最小的学生编号互换位置,然后输出此时5位学生的编号。

输入

输入5位学生的编号(只含数字字符、英文字母或空格)。

输出

输出按题意要求排序后的5位学生的编号。

样例输入

good1

tiger100

horse2011

mouse 022

21century

样例输出

21century

mouse 022

horse2011

good1

tiger100

提示

用gets()函数输入字符串。#include

int main()

char *temp,*p[5];

char str[5][50];

int i,j,c;

for(i=0;i<5;i++) {

gets(str[i]);

p[i] = str[i];

}

for(i=0;i<5;i++) {

for(j=4;j>=i+1;j--) {

if((*p[j])>(*p[j-1])) {

temp = p[j];

p[j] = p[j-1];

p[j-1] = temp;

}

}

printf("%s\n",p[4]);

for(i=1;i<4;i++)

{

printf("%s\n",p[i]);

}

printf("%s\n",p[0]);

}

4.编程实现将字符串中最短的单词输出,在主函数中输入字符串,编写一个函数完成最短单词的查找,如果有多个相同长度单词,则只输出第一个最短单词。假设单词之间用空格分隔(一个或多个空格),findshort(s1,s2)函数完成s1串是最短单词的查找,找到的最短单词存储于s2中。

输入

一行字符串

输出

最短单词

样例输入

Happy new year

样例输出

new

# include

# include

int main()

{

int i,l;

int min = 0, p, q;

char str[10000];

gets(str);

for(i = 0; str[i] != '\0'; i ++)

{

if(str[i] != ' ')

{

q = i;

l = 1;

while(str[++ i] != ' ' && str[i] != '\0')

++ l;

if(min == 0 || min > l)

{

min = l;

p = q;

}

-- i;

}

}

for(i = p; str[i] != ' ' && str[i] != '\0'; ++ i) printf("%c", str[i]);

printf("\n");

return 0;

}

5.输出任意的一个字符串内(字符串内可以包含空格)的所有整数。输出时两整数间有四个空格。

相关文档
最新文档