中国大学mooc浙大翁恺c语言2019

1.时间换算
注意事项
1)限制时间范围
2)if下有两个语句,记得加括号
3)以hour,minute为变量判断,输入BJT时,记得将BJT转换为hour,minute

#include 

int main(void)
{
	int BJT, UTC, hour, minute;
scanf("%d",&BJT);
hour = BJT/100;
minute = BJT - hour*100;
while(hour < 0||hour > 23|| minute > 59||minute < 0){
	printf("");
	scanf("%d",&BJT);
	hour = BJT/100;
	minute = BJT - hour*100;
}
UTC = BJT - 800;
			
if(UTC >= 0){
	UTC = UTC;
	printf("%d",UTC);
}
else{  
	UTC = UTC + 2400;
	printf("%d",UTC);
}
	return 0;
}


2.分队列
注意事项
1)最后一个数字后无空格

#include 

int main(void)
{
	int n, i;
scanf("%d",&n);

for(i = 1; i <= n; i += 2){
	printf("%d",i);
	if(i < (n - 1))
		printf(" ");
}

	return 0;
}


3.素数和
注意事项
1)循环的顺序
2)注意循环条件,不要造成死循环
3)isprime = 1的位置

#include 
int main()
{
	int n, m, i, j, sum, x;	//x是正整数  第j个素数值 
	j = 0;
	sum = 0;//初始化 
	int isprime = 1;
	
	
	scanf("%d %d",&n,&m);
	for(x = 2;j <= m;x++){			//跳出循环
		isprime = 1; 
		for(i = 2;i < x;i++){		
			if(x%i == 0){
				isprime = 0;
				break;
			}
		}
		
		if(isprime == 1){
			j++;
			if(j >= n&&j <= m){
				sum += x;
			}
		}
		
	}
									//判断x是否是素数
	printf("%d",sum);

    return 0;
}

4.念整数
注意事项
1)Oj测试数据很大可能是临界点数据,例如0,可通过单独为其加上一个判断解决,以后学习了新知识后可回过头来更好地解决这个问题。
2)通过我的一波操作,发现该题第一个用例是输入0,输出ling。
3)scanf函数注意加上&,不知道为什么总是忘记加,编译器也检查不出来

#include 
#include 
int main()
{
	int dight, n, x, true, a;
	scanf("%d",&n);				
	true = 0;
	a = 0;
	
	if(n == 0){					
		printf("ling");
	}							// 单独念0 
		
	if(n < 0){
		printf("fu ");
		n = -n;
	}							// 针对负数 
	
	for(x = 6;x >= 0;x-- ){
		a = pow(10,x);
		dight = n/a;
		n = n - dight*a;
		if(dight > 0){
			true = 1;
		}						// 进行循环,分别得出不同位数上的数 
						
		if(true == 1){			//注意是==,而不是= 
	        switch(dight){
	            case 0:
	                printf("ling");
	                break;
	            case 1:
	                printf("yi");
	                break;
	            case 2:
	                printf("er");
	                break;
	            case 3:
	                printf("san");
	                break;
	            case 4:
	                printf("si");
	                break;
	            case 5:
	                printf("wu");
	                break;
	            case 6:
	                printf("liu");
	                break;
	            case 7:
	                printf("qi");
	                break;
	            case 8:
	                printf("ba");
	                break;
	            case 9:
	                printf("jiu");
	                break;    
	        }
	        
		}
		
		if(x != 0&&true == 1){
			printf(" ");			// 最后一个拼音后无空格 
		}
		
	}
	        
    return 0;
}






你可能感兴趣的:(c语言)