c语言上机考试常见题目

输入一行字符串求空格数字的数量

#include<stdio.h>
int main()
{
    char c;
    int  letters=0,space=0,digit=0,others=0;
    printf("please input some characters\n");
    while((c=getchar())!='\n')
    {
        if(c>='a'&&c<='z'||c>='A'&&c<='Z')
        letters++;
        else if(c==' ')
        space++;
        else if(c>='0'&&c<='9')
        digit++;
        else
        others++;
        
    }
    printf("letters=%d space=%d digit=%d others=%d\n",letters,space,digit,others);
    return 0;
}


求阶乘相加

#include<stdio.h>
int main()
{
int n=1,sum=0,a=1;
while(n<=50)
{
    n=n+1;
    sum=sum+a;
    a=a*n;
}
printf("%d",sum);
    return 0;
}

输出一个星号组成的菱形

#include<stdio.h>
int main()
{
    for(int i = 0; i < 5; ++i)
    {
        for(int j = 0; j < i; ++j)
        printf(" ");
        printf("****\n");
    }
    return 0;
}

读入一个字符串,然后统计其中每一个字母出现的次数,并输入结果

#include <stdio.h>
int main(void){
    int i,count;
    char c,str[256];
    fgets(str,255,stdin);
    for(c='a';c<='z';c++) {
        count=0;
        for(i=0;str[i]!='\0';i++){
            if(str[i]==c||str[i]==(c-32)) count++; 
        }
        printf("%c:%d\n",c,count);
    }
    return 0;
}

输入一行数字,实现求得每个数字相加的和

#include <stdio.h>

int main() {
    char str[100];
    int sum = 0;
    printf("请输入一行数字:");
    scanf("%s", str);
    for (int i = 0; str[i] != '\0'; i++)
    {
        sum += str[i] - '0';
    }
    printf("每个数字相加的结果为:%d\n", sum);
    return 0;
}

用c语言输出

   *
  ***
 *****
*******
 *****
  ***
   *

#include <stdio.h>
#include <math.h>
int main(void){
    int i,j;
    for(i=-3;i<=3;i++)
    {
        for(j=0;j<abs(i);j++) printf(" ");
        for(j=0;j<7-2*abs(i);j++) printf("*");
        printf("\n");
        }
    return 0;
}

给定三个整数型x,y,z,输出三个数中的最大值和最小值

#include <stdio.h>
	void main()
	{
	  int a,b,c,max,min;
	  printf("Input a,b,c\n");
	  scanf("%d%d%d",&a,&b,&c);
	  max=a;min=a;
	  if(b>max) 		max=b;
	  else if(b<min) 	min=b;
	  if(c>max) 		max=c;
	  else if(c<min) 	min=c;
	  printf("a=%d;b=%d;c=%d;\n",a,b,c);
	  printf("max=%d;min=%d\n",max,min);
	}

输入一个字符,判断其是否为英文字母,若是英文字母,则将其大小写进行转换,若不是英文字母,则不变。

    #include <stdio.h>
	void main()
	{
	  char c1,c2;   
   printf("Input  a   letter: ");
	  c1=getchar();
	  if(c1>='a'&&c1<='z')	   		c2=c1+'A'-'a';
	  else if(c1>='A'&&c1<='Z')	    c2=c1+'a'-'A';
	  else	   c2=c1;   
printf("原字符:%c转换后为:%c\n",c1,c2);
	}

编写一个程序,从键盘输入三个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a。

#include <stdio.h>
	void main()
	{  int a,b,c,t;
	  printf("Input a,b,c\n");
	  scanf("%d%d%d",&a,&b,&c);
	  t=a;
	  a=b;
	  b=c;
	  c=t;
	  printf("a=%d;b=%d;c=%d;\n",a,b,c);
}

从键盘输入一个三角形的三条边,判断是否能组成三角形,若能组成三角形,则输出它的面积。

 #include <stdio.h>
	#include <math.h>
	void main()
	{ float a, b, c, s, area;
	 printf("输入三条边:\n");
	 scanf("%f%f%f",&a,&b,&c);
	 if(a+b>c&&a+c>b&&b+c>a)
	 {  s=(a+b+c)/2;        
         area=sqrt(s*(s-a)*(s-b)*(s-c));
	     printf("area=%7.2f\n",area);
	 
	else	  printf("不能构成三角形 \n");
	}

 给定三条边,判断其是否能构成三角形,若能构成,判断其是等腰三角形、等边三角形、直角三角形还是普通三角形。

#include <stdio.h>
	void main()
	{
	float a,b,c;
	printf("输入三条边:\n");
	scanf("%f%f%f",&a,&b,&c);
	if(a+b>c&&a+c>b&&b+c>a)
	{ if(a==b&&b==c)	             printf("等边三角形\n");
	 else if(a==b||b==c||c==a)	     printf("等腰三角形\n");
	 else if(a*a==b*b+c*c||b*b==a*a+c*c||c*c==b*b+a*a)
	     	printf("直角三角形\n");
	}
	else	  printf("不能构成三角形 \n");
	}

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值