01-C语言练习题

1、系统随机产生一个整数,通过键盘输入数据猜数,猜对为止,并要求统计猜的次数。注: rand()函数可以产生0~100间的正整数,程序中需包含stdlib.h。

#include"my_head.h"

int main(int argc ,char *argv[])
{
    long int a;
    int time=0;
    int i = rand()%100;
    printf("随机数是:%d\n",i);
    
    
    do{        
            printf("请输入你的想法:");
            scanf("%ld",&a);
                
            if(i != a)
            {
                time++;
            }
            printf("老六!错了!\n");
        }while(i != a);
        
    printf("牛逼 猜对了!\n");
    
    
    printf("你一共猜了%d次\n",time+1);
    
    
    return 0;
}

2、自己封装一个函数,输入一个数,输出判定为是否为素数,是就打印是素数,不是就打印不是素数

#include "my_head.h"
void sushu(int a)
{
    int i;
    for(i=2;i<=a;i++)//3
    {
        if(a%i == 0)
            break;
    }
        if(a == i)
        printf("是素数\n");
        else
        printf("不是素数\n");
        
    
}


int main(int argc,char *argv[])
{
    int a;
    while(1)
    {
        printf("请输入一个数:");
        scanf("%d",&a);

        sushu(a);
    }
    
    return 0;
}

3、 输入一个字符串hello,输出时olleh

#include <stdio.h>
#include <string.h>

int main(int argc,char *argv[])
{
	char a[100];
	
	printf("pls input :");
	scanf("%s",a);
	
	int i,j,k,temp;
	k = strlen(a);
	
	for(i=0,j=k-1;i<3;i++,j--)
	{
		temp = a[i];
		a[i] = a[j];
		a[j] = temp;

	}
	
	
	printf("%s\n",a);
	
	
	return 0;
}

4、输入两个正整数m和n,求其最大公约数和最小公倍数。

#include "my_head.h"


int main(int argc,char *argv[])
{

	int t,m,n,i,j,k;
	printf("请输入m:");
	scanf("%d",&m);
	
	printf("请输入n:");
	scanf("%d",&n);
	
	if(m<n)//12 15
	{
		t = m;//t=12
		m = n;//m=15
		n = t;//n=12
	}
	k = m * n ;

	//printf("%d\n",m);
	//printf("%d\n",n);
	while(n!=0)
	{
		i = m % n;        //15/12=1-3 i=3      12/3=4-0
		m = n;            //max=12              max=3
		n = i;            //n=3                   n=0
	}
	printf("最大公约数:%d\n",m);
	printf("最小公倍数:%d\n",k/m);

	return 0;
}

5、编写一个程序,从4个整数中找出最小的数,并显示此数

#include "my_head.h"


int main(int argc,char *argv[])
{
	int a[4];
	
    int i, j ,min;
    for (i = 0; i < 4; i++)
		scanf("%d",&a[i]);
	min = a[0];
    for (j = 1; j < 4; j++)
	{
		if (a[j] < min)
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值