C语言基础40题

/*1.输入 2 个整数,求两数的平方和并输出。*/

#include<stdio.h>
int main(){
    int a,b;
    int num;
    printf("please input two numbers:");
    scanf("%d%d",&a,&b);
    num=a*a+b*b;
    printf("the result is %d\n",num);
    return 0;
}

/*2. 输入一个圆半径(r)当 r>=0 时,计算并输出圆的面积和
周长,否则,输出提示信息。*/

#include<stdio.h>
#define pi 3.14 //宏名称必须是标识符 
int main(){
    float r,S,V;
    printf("plesae input r=");
    scanf("%f",&r);
    if(r>=0)
        printf("圆面积为%f,圆周长为%f",pi*r*r,2*pi*r);
    else
        printf("r输入不合法");
    return 0;
}

/*3.函数 y=f(x)可表示为:
   2x+1 (x<0)
y  = 0 (x=0)
   2x-1 (x>0)
编程实现输入一个 x 值,输出 y 值。*/

#include<stdio.h>
int main(){
    int x,y;
    printf("please input x=");
    scanf("%d",&x);
    if(x<0)y=2*x+1;
    if(x==0)y=0;
    if(x>0)y=2*x-1;
    printf("y=%d",y);
    return 0;
}

/*4.编写一个程序,从 4 个整数中找出最小的数,并显示此数。*/ 

#include<stdio.h>
int fun(int x,int y){
    if(x<y) return x;
    else return y; 
}
int main(){
    int a,b,c,d;
    int x;
    printf("please input four numbers:\n");
    scanf("%d%d%d%d",&a,&b,&c,&d);
    x=fun(a,b);
    x=fun(x,c);
    x=fun(x,d);
    printf("最小数为%d",x);
    return 0;
    
}

/*5.有一函数当 x<0 时 y=1,当 x>0 时,y=3,当 x=0 时 y=5,编
程,从键盘输入一个 x 值,输出 y 值。*/ 

#include<stdio.h>
int main(){
    int x,y;
    printf ("please input x=");
    scanf("%d",&x);
    if(x<0)y=1;
    else if(x>0)y=3;
    else if(x==0)y=5;
    printf("y=%d",y);
    return 0;
}

/*6.从键盘输入两个数,求出其最大值(要求使用函数完成求最
大值,并在主函数中调用该函数)*/ 

#include<stdio.h>
int fun(int x,int y){
    if(x>y)return x;
    else return y;
}
int main(){
    int a,b;
    int max;
    printf("please input two numbers:\n");
    scanf("%d%d",&a,&b);//注意逗号 
    max=fun(a,b);
    printf("max=%d",max);
    return 0;
} 

/*7.从键盘输入你和你朋友的年龄,编成判断谁的年龄最大,
并打印最大者的年龄。*/ 

#include<stdio.h>
int main(){
	int youage,youfriendage;
	printf("please input you age:");
	scanf("%d",&youage) ;
	printf("\nplease input your friend age:");
	scanf("%d",&youfriendage);
	if(youage>youfriendage)
		printf("you age is older,you age is %d",youage);
	else
		printf("you friend age is older,you friend age is %d",youfriendage);	
	return 0;
}

 /*8、键盘输入 2 个加数,再输入答案,如果正确,显示“right”,否则显示“error”*/

#include<stdio.h>
int main(){
	int a,b,sum;
	printf("please input two numbers:");
	scanf("%d%d",&a,&b);
	printf("please input sum:");
	scanf("%d",&sum);
	if(a+b==sum)printf("right");
	else printf("error");
	return 0;
}

 /*9. 编一程序每个月根据每个月上网时间计算上网费用,计算方
法如下:费用=30元(<=10小时);每小时 3元 (10—50小时);每小时 2.5元 (>=50小时);  
要求当输入每月上网小时数,显示该月总的上网费用*/

#include<stdio.h>
int main(){
	float t,y;
	printf("please input time:");
	scanf("%f",&t);
	if(t<=10)y=30;
	else if(t<50&&t>10)y=3*t;
	else y=2.5*t;
	printf("the result is %f",y);
	return 0;
}

 /*10.神州行用户无月租费,话费每分钟 0.6 元,全球通用户月租
费 50 元,话费每分钟 0. 4 元。输入一个月的通话时间,分别
计算出两种方式的费用,判断哪一种合适。*/

#include<stdio.h>
int main(){
	float t,fee1,fee2;
	printf("please input time:");
	scanf("%f",&t);
	fee1=t*0.6;
	fee2=t*0.4+50;
	printf("神州行用户话费:%f\n",fee1);
	printf("全球通用户话费:%f\n",fee2);
	if(fee1<fee2)printf("神州行更合适");
		else printf("全球通更合适");
	return 0;	
	
} 

/*11.个人所得税计算,应纳税款的计算公式如下:
收入                          税率
收入<=1000 元部分            0%
2000 元>=收入>1000 元的部    5%
3000 元>=收入>2000 元的部    10%
6000 元>=收入>3000 元的部    15%
收入>6000 元的部分            20%
输入某人的收入,计算出应纳税额及实际得到的报酬。(7
分)
(如需连续计算多个人的纳税情况,直到输入负数为止,程序
应如何改进?试写出程序)*/

#include<stdio.h>
int main(){
	int val;
	int tax,realval;
	printf("please input val:");
	scanf("%d",&val);
		if(val<0){
			printf("error");
			return 0;	
		}
		else if(val<=1000){
			tax=0;
			realval=val;
			printf("应缴纳税额:%d 实际报酬:%d",tax,realval);
		}
		else if(val<=2000&&val>1000){
			tax=(val-1000)*0.05;//C语言里5%写作0.05即可 
			realval=val-tax;
			printf("应缴纳税额:%d 实际报酬:%d",tax,realval);
		}
		else if(val<=3000&&val>2000){
			tax=(val-2000)*0.1+1000*0.05;
			realval=val-tax;
			printf("应缴纳税额:%d 实际报酬:%d",tax,realval);
		}
		else if(val<=6000&&val>3000){
			tax=(val-3000)*0.15+1000*0.05+1000*0.1;
			realval=val-tax;
			printf("应缴纳税额:%d 实际报酬:%d",tax,realval);
		}
		else if(val>6000){
			tax=(val-6000)*0.20+1000*0.05+1000*0.10+3000*0.15;
			realval=val-tax;
			printf("应缴纳税额:%d 实际报酬:%d",tax,realval);
		}

	return 0;
}

 /*12.从键盘上输入一个百分制成绩 score,按下列原则输出其等
级 : score≥90 , 等 级 为 A ; 80≤score<90 , 等 级 为 B ;
70≤score<80,等级为 C;60≤score<70,等级为 D;score<60,
等级为 E。*/

#include<stdio.h>
int main(){
	int score;
	printf("please input score:");
	scanf("%d",&score);
	switch(score/10){
		case 10: 
		case 9:printf("A");break;
		case 8:printf("B");break;
		case 7:printf("C");break;
		case 6:printf("D");break;
		default:printf("E");
	}
	return 0;
}

 /*13. 编程设计一个简单的计算器程序。从键盘输入 2 个操作
数,1 个运算符,当运算符为加(+)、减(-)、乘(*)、除(/)时,输出计算结果*/

#include<stdio.h>
int main(){
	int a,b;
	char c;
	scanf("%d%c%d",&a,&c,&b);
	switch(c){
		case '+':printf("%d+%d=%d",a,b,a+b);break;
		case '-':printf("%d-%d=%d",a,b,a-b);break;
		case '*':printf("%d*%d=%d",a,b,a*b);break;
		case '/':if(b!=0){
				printf("%d/%d=%d",a,b,a/b);
				break;
			}else{
				printf("error1");
				break;
			}
		default:printf("error2");	
	}
	return 0;
		
}

 /*14. 从键盘输入10个整数,统计其中正数、负数和零的个数,
并在屏幕上输出。*/

#include<stdio.h>
int main(){
	int a[10];
	int i;
	int z=0,b=0,c=0;
	for(i=0;i<10;i++){
		scanf("%d",&a[i]);
	}
	for(i=0;i<10;i++){
		if(a[i]>0)z++;
		else if(a[i]<0)b++;
		else if(a[i]==0)c++;
	}
	printf("正数个数:%d,负数个数:%d,0个数:%d",z,b,c);
	return 0; 
	
}

 /*15、编程序实现求 1-200 之间的所有数的乘积并输出。*/

#include<stdio.h>
int main(){
	int i;
	double s=1;	//int会溢出,double也只够100,凑不到200 
	for(i=2;i<100;i++){
		s=s*i;
	}
	printf("the result is %f",s);
	return 0;
}

 /*16、编程序实现求 1-1000 之间的所有奇数的和并输出。*/ 

#include<stdio.h>
int main(){
	int i;
	int sum;
	for(i=1;i<1000;i+=2){
		//if(i%2==1)sum+=i;
		sum+=i;
	}
	printf("%d",sum);
	return 0;
}

/*17. 从键盘上输入 10 个数,求其平均值。*/ 

#include<stdio.h>
int main(){
	int i,x;
	float avi,sum=0; //avi会有小数 
	for(i=0;i<10;i++){
		scanf("%d",&x);
		sum+=x;
	}
	avi=sum/10;
	printf("平均值:%f",avi);
	return 0;
	
}

 /*18.有一个分数序列:2/1,3/2,5/3,8/5,13/8,21/13……
编程求这个序列的前 20 项之和。*/

#include<stdio.h>
int main(){
	int i,t=0;
	float a=2,b=1;
	float sum=0;
	for(i=0;i<20;i++){//int t保证了分子分母都是整形 
		sum+=a/b;
		t=a+b;
		b=a;
		a=t;
	}
	printf("%f",sum);
	return 0;
}

 /*19. 用数组实现以下功能:输入 5 个学生成绩,而后求出这些
成绩的平均值并显示出来。*/ 

#include<stdio.h>
int main(){
	float a[5];
	int i;
	float sum=0,avi;
	for(i=0;i<5;i++){
		scanf("%f",&a[i]);
		sum+=a[i];
	}
	avi=sum/5;
	printf("%f",a[i]);
	return 0;
}

 /*20、用循环的方法构造一个 5 行 5 列的二维数组,使主对角线
上的变量为 1,其它为 0,并将数组中所有项按行按列显示出来。*/

#include<stdio.h>
int main(){
	int i,j;
	int a[5][5];
	for(i=0;i<5;i++){
		for(j=0;j<5;j++){
			if(i==j)a[i][j]=1;
			else a[i][j]=0;
		}
	}
	for(i=0;i<5;i++){
		for(j=0;j<5;j++){
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
	return 0;
}

/*21.求一个 3×3 矩阵对角线元素之和。从键盘输入矩阵元素的
值并输出和的值.*/

#include<stdio.h>
int main(){
	int a[3][3];
	int i,j;
	int sum=0;
	for(i=0;i<3;i++){
		for(j=0;j<3;j++){
			scanf("%d",&a[i][j]);	
		}
	}
	for(i=0;i<3;i++){
		for(j=0;j<3;j++){
			if(i==j)sum+=a[i][j];	
		}
	}
	printf("%d",sum);
	return 0;
}

/*22.输入 n 的值,n 代表行数,输出如图所示的图形。
*
* * *
* * * * *
* * * * * * * (此图为 n=4 时的输出结果)*/ 

#include<stdio.h>
int main(){
	int n;
	int i,j;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<(2*i+1);j++){
			printf("*"); 
		}
		printf("\n");
	}
	return 0;
}

/*23、从键盘输入 30 名学生的成绩数据,求其中的最高分、最低
分和平均分。*/

#include<stdio.h>
int main(){
	int a[30];
	int i,max,min,sum,avi=0;//必须先赋值 
	for(i=0;i<30;i++){
		scanf("%d",&a[i]);
		sum+=a[i];
	}
	max=a[0];
	for(i=0;i<30;i++){
		if(a[i]>max)max=a[i];
	}
	min=a[0];
	for(i=0;i<30;i++){
		if(a[i]<min)min=a[i];
	}
	avi=sum/30;
	printf("max=%d,min=%d,avi=%d",max,min,avi);
	return 0;	
}

/*24. 从键盘输入某班学生某门课的成绩及其学号(班级人数最多 40 人,具体人数由键盘输入),
输出该班最高分和最低分及其学生学号;并输出该班该课程的总分和平均分。请编写程序。*/ 

#include<stdio.h>
int main()
{
	int n,i;
	int a[100][2];
	int max,max_num,min,min_num,sum,avi;
	printf("输入人数:"); 
	scanf("%d",&n);
	sum=0;
	for(i=0;i<n;i++){
		printf("输入学号:") ; 
		scanf("%d",&a[i][0]);
		printf("输入成绩:") ; 
		scanf("%d",&a[i][1]);
		sum+=a[i][1];
	}
	max=a[0][1];
	max_num=a[0][0];
	for(i=0;i<n;i++){
		if(max<a[i][1]){
			max=a[i][1];
			max_num=a[i][0];
		}
	}
	min=a[0][1];
	min_num=a[0][0];
	for(i=0;i<n;i++){
		if(min>a[i][1]){
			min=a[i][1];
			min_num=a[i][0];
		}
	}
	avi=sum/n;
	printf("最高分:%d,最高分学号:%d\n",max,max_num);
	printf("最低分:%d,最低分学号:%d\n",min,min_num);
	printf("总分:%d,平均分:%d",sum,avi);
	return 0;	
	
}

 /*25.将一个有 5 个元素的数组中的值(整数)按逆序重新存放。
例: 原来顺序为:8、6、5、4、1,要求改为1、4、5、6、8*/

#include<stdio.h>
int main(){
	int a[5]={8,6,5,4,1};
	int t,i;
	for(i=0;i<5;i++){
		printf("%d ",a[i]);
	}
	printf("\n");
	for(i=0;i<5/2;i++){
		t=a[i];
		a[i]=a[5-i-1];
		a[5-i-1]=t;
	}
	for(i=0;i<5;i++){
		printf("%d ",a[i]);
	}
	return 0;
}

 /*26.从键盘上输入一个 2*3 的矩阵,将其转置后形成3*2的矩阵输出。*/

#include<stdio.h>{
int main(){
	int a[2][3],b[3][2];
	int i,j;
	int t;
	for(i=0;i<2;i++){
		for(j=0;j<3;j++){
			scanf("%d",&a[i][j]);
		}
	}
	printf("原输出:\n");
	for(i=0;i<2;i++){
		for(j=0;j<3;j++){
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}	
	for(i=0;i<3;i++){
		for(j=0;j<2;j++){
			//t=a[j][i];
			b[i][j]=a[j][i]; 
			//a[j][i]=t;
		}
	}
	printf("变后输出:\n"); 
	for(i=0;i<3;i++){
		for(j=0;j<2;j++){
			printf("%d ",b[i][j]);
		}
		printf("\n");
	}
	return 0;
}

 /*27.编写两个函数分别求两个整数的最小公倍数和最大公约数,用主函数调用这两个函数并输出结果。两个整数由键盘输入。*/

/*求最大公约数:更相减损法
			分析:a, b两个数字(a > b)
			先将两个数字做差: a - b = c;
			然后再将b和c之间做差,
			直到b和c相等; 
*/
/*求最大公倍数:利用最大公约数的计算结果
				最大公倍数等于两个数的乘积除以最大公约数
*/ 
#include<stdio.h>
int fun1(int a,int b){
	while(a!=b){
		if(a<b){
			b=b-a;
		}
		
		else if(a>b){
			a=a-b;			
		}

		
	}
	return a;		
}
int fun2(int a,int b){
	int c=fun1(a,b);
	c=a*b/c;
	return c; 
}
int main(){
	int a,b,c1,c2;
	scanf("%d%d",&a,&b);
	c1=fun1(a,b);
	c2=fun2(a,b);
	printf("最大公约数:%d,最小公倍数:%d",c1,c2);
	return 0;
}

/*28. 输入一个 3*3 矩阵,求出其转置矩阵,并求出两个矩阵的和.*/

#include<stdio.h>
int main(){
	int a[3][3],b[3][3],c[3][3];
	int i,j;
	for(i=0;i<3;i++){
		for(j=0;j<3;j++){
			scanf("%d",&a[i][j]);
		}
	}
	for(i=0;i<3;i++){
		for(j=0;j<3;j++){
			b[i][j]=a[j][i];
			printf("%2d",b[i][j]);
		}
		printf("\n");
	}
	for(i=0;i<3;i++){
		for(j=0;j<3;j++){
		c[i][j]=a[i][j]+b[i][j];
		printf("%2d",c[i][j]);
		}
		printf("\n");	
	}
	
}

/*29、从键盘输入 10 名学生的成绩数据,按成绩从高到低
的顺序排列并输出。(提示:用数组存放成绩数据)*/

/*冒泡排序:
for (int i = 0; i < n - 1; ++i) {
        // 每次外层循环都会确定当前未排序部分中的最大/最小值所在位置
        for (int j = 0; j < n - i - 1; ++j) {
            if (arr[j] > arr[j + 1]) {
                // 如果发现后面的元素更大/更小,则进行交换
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}
*/ 
#include<stdio.h>
int main(){
	int a[10];
	int i,j;
	int t;
	for(i=0;i<10;i++){
		scanf("%d",&a[i]);
	}	
	for(i=0;i<10-1;i++){//冒泡排序 
		for(j=0;j<10-i-1;j++){
			if(a[j]<a[j+1]){
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}	
		}
	}
	for(i=0;i<10;i++){
		printf("%d ",a[i]);
	}
	return 0;
} 

/*30. 定义一个 5 行 3 列的数组,从键盘输
入各数组元素的值,计算各数组元素之和。*/

#include<stdio.h>
int main(){
	int a[5][3];
	int i,j;
	int sum=0;
	for(i=0;i<5;i++){
		for(j=0;j<3;j++){
			scanf("%d",&a[i][j]);
			sum+=a[i][j];
		}
	}
	printf("%d",sum);
	return 0;
}

/*31、编写程序,交换两个数组中的对应元素。*/

#include<stdio.h>
#define N 10
int main(){
	int a[N],b[N];
	int i,j;
	int t=0;
	printf("a数组:"); 
	for(i=0;i<N;i++){
		scanf("%d",&a[i]);
	} 
	printf("b数组:"); 
	for(i=0;i<N;i++){
		scanf("%d",&b[i]);
	}
	for(i=0;i<N;i++){
		t=a[i];
		a[i]=b[i];
		b[i]=t;
	}
	printf("a数组:");
	for(i=0;i<N;i++){
		printf("%d",a[i]);
	}
	printf("\n");
	printf("b数组:");
	for(i=0;i<N;i++){
		printf("%d",b[i]);
	}
	return 0;
	
}

/*32、从键盘上输入一个 4*3 的整型数组,
找出数组中的最小值及其在数组中的下标。*/

#include<stdio.h>
int main(){
	int a[4][3];
	int min,min_num_i,min_num_j;
	int i,j;
	printf("输入数组元素:\n"); 
	for(i=0;i<4;i++){
		for(j=0;j<3;j++){
			scanf("%d",&a[i][j]);
		}
	}
	min=a[0][0];
	min_num_i=0;
	min_num_j=0;
	for(i=0;i<4;i++){
		for(j=0;j<3;j++){
			if(min>a[i][j]){
				min=a[i][j];
				min_num_i=i;
				min_num_j=j;
			}
		}
	}
	printf("最小值:%d,在数组中下标为(%d,%d)",min,min_num_i,min_num_j);
	return 0;
}

 /*33.编程实现如下功能:从键盘输入一行字符,
统计其中大写英文字符,小写英文字符和其他字符的个数。*/

#include<stdio.h>
#include<string.h>
int main(){
	char str[10];
	gets(str);
	int i;
	int num_b=0,num_s=0,num_o=0;
	for(i=0;i<strlen(str);i++){
		if(str[i]<='Z'&&str[i]>='A')num_b++;
		else if(str[i]<='z'&&str[i]>='a')num_s++;
		else num_o++;
	}
	printf("大写英文字符个数:%d\n小写英文字符个数:%d\n其他字符个数:%d",num_b,num_s,num_o);
	return 0;
}

 /*34.编程实现如下功能:
1)在主函数中,实现从键盘输入10 名学生某门课的成绩,
保存在一维数组中;调用排序函数;对排序后的数组中的元素
按从高到低打印输出。
2)编写排序函数,使用数组名做函数参数,实现对该成绩的排序。*/ 

#include<stdio.h>
void fun(float a[],int n){//冒泡排序 
	int i,j;
	float t;
	for(i=0;i<n-1;i++){
		for(j=0;j<n-i-1;j++){
			if(a[j]<a[j+1]){
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
		}
	}
}
int main(){
	float a[10];
	for(int i=0;i<10;i++){
		scanf("%f",&a[i]);
	}
	fun(a,10);
	for(int i=0;i<10;i++){
		printf("%f ",a[i]);
	}
	return 0;
} 

/*35.编程实现如下功能:实现从键盘输入两个字符串,
分别存入两个不同的字符数组中;将两个字符串连接为
一个字符串,并打印输出连接后的整个字符。*/

#include<stdio.h>
#include<string.h>
int main(){
	char str1[100];
	char str2[10];
	int i,j;
	gets(str1);
	gets(str2);
	for(i=strlen(str1),j=0;j<strlen(str2);i++,j++){
		str1[i]=str2[j];
	}
	str1[i]='\0';
	puts(str1);
	return 0;
}

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

/*利用rand()产生随机数字:
	 #include<time.h>
	 srand(seed)->srand((int)time(0));//seed为整数,当seed固定,rand()产生的随机数固定
	 a=rand(); 
*/
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
	int a,b;
	int count;
    srand((int)time(0));
	a=rand();
	do{
		printf("请猜(0~32767):");
		scanf("%d",&b);
		count++;
		if(b>a){
			printf("猜高了!\n"); 
		}
		else if(b<a){
			printf("猜低了!\n");
		}
	}while(b!=a);
	printf("猜对了!!!,猜了%d次",count);
	return 0;
}

/*37.输入两个整数,利用指针变量作为函数参数,
编程实现两数互换功能,并将交换后的数据重新输出。*/

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

/*38.随机输入若干个学生的体重,以输入负数或零结束,
分别求最重和最轻的体重,并计算平均体重。*/

#include<stdio.h>
int main(){
	float w;
	float max,min,avi=0;
	int count=0;
	printf("please input weight:");
	scanf("%f",&w);
	avi+=w;
	max=w;
	min=w;
	count++;
	//printf("\n");
	while(w>0){
		printf("please input weight:");
		scanf("%f",&w);
		count++;
		avi+=w;
		if(max<w){
			max=w;
		}
		if(min>w){
			min=w;
		}
	//	printf("\n");
		
	}
	avi=avi/count;
	printf("最大:%f\n最小:%f\n平均:%f",max,min,avi);
	return 0;
	
}

 /*39.输入 m,k 的值,编程求下面表达式
的值:(要求编写一个求阶乘的函数,
调用函数实现本题)p=k!/(m-k)!*/

#include<stdio.h>
int fun(int a){
	/*while(a!=1){
		a*=(a-1);
	}*/
	int result=1;
	for(int i=2;i<=a;i++){
		result*=i;
	}
	printf("%d的阶乘=%d\n",a,result);
	return result;
}
int main(){
	int m,k;
	scanf("%d%d",&m,&k);
	double p;
	p=fun(k)/fun(m-k);
	printf("p=%f",p);
}

/*40. 编写程序,其中自定义一函数,用来判断一个
整数是否为素数,主函数输入一个数,输出是否为素数。*/

#include<stdio.h>
bool fun(int x){
	int i;
	for(i=2;i<x/2;i++){
		if(x%i==0)return false;
	}
	return true;
} 
int main(){
	int a;
	bool t; 
	scanf("%d",&a);
	t=fun(a);
	if(t){
		printf("%d是素数",a);
	}
	else{
		printf("%d不是素数",a);
	}
	return 0;
}

  • 24
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【优质项目推荐】 1、项目代码均经过严格本地测试,运行OK,确保功能稳定后才上传平台。可放心下载并立即投入使用,若遇到任何使用问,随时欢迎私信反馈与沟通,博主会第一时间回复。 2、项目适用于计算机相关专业(如计科、信息安全、数据科学、人工智能、通信、物联网、自动化、电子信息等)的在校学生、专业教师,或企业员工,小白入门等都适用。 3、该项目不仅具有很高的学习借鉴价值,对于初学者来说,也是入门进阶的绝佳选择;当然也可以直接用于 毕设、课设、期末大作业或项目初期立项演示等。 3、开放创新:如果您有一定基础,且热爱探索钻研,可以在此代码基础上二次开发,进行修改、扩展,创造出属于自己的独特应用。 欢迎下载使用优质资源!欢迎借鉴使用,并欢迎学习交流,共同探索编程的无穷魅力! 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip
C语言是一种广泛应用在程序设计中的编程语言,也是许多计算机科学专业学生必须学习的一个重要语言。在面试中,C语言基础通常是一个重要的考察点。下面是一些常见的C语言基础面试及其答案: 1. C语言中的指针是什么? 指针是一种变量,用于存储内存地址。可以使用指针来访问存储在内存中的数据。 2. C语言中的宏是什么? 宏是一种预处理器指令,它可以在编译前对代码进行文本替换。它可以用于定义常量、函数和代码片段。 3. C语言中的数组和指针有什么区别? 数组和指针都可以用来访问内存中的数据。数组是一组连续的内存单,每个单都有自己的地址,可以使用下标来访问数组中的素。而指针则是一种变量,存储一个地址,可以使用指针间接访问内存中的数据。数组的大小在编译时确定,而指针可以动态分配内存。 4. C语言中的结构体是什么? 结构体是一种用户定义的数据类型,可以将不同类型的数据组合在一起,形成一个新的数据类型。结构体由多个成员变量组成,每个成员变量都可以是不同的数据类型。 5. C语言中的函数指针是什么? 函数指针是指向函数的指针变量,可以用来存储函数的地址。函数指针可以作为参数传递给其他函数,也可以用于实现函数回调。 以上这些是C语言基础面试及答案的一些示例。在实际面试中,还需要根据具体岗位对C语言的要求进行适当调整。不管是面试还是实际开发中,掌握C语言基础是非常重要的,这样才能更好地理解和实现软件工程。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值