c语言编程复试上机零分,考研复试-----C语言上机操作(五)

经过激烈的竞争,研究生的生活终于要到来了!希望自己可以在新的阶段继续努力!希望可以在这里将考试中遇到的问题记下来,供大家参考,也希望对大家有所帮助!

第二题:

1,问题描述

随便给一个不大于1000的数A,列出所有的可能,两个素数B、C相加A;(例如:10=3+7;10=5+5;)

2,问题思路

要理解素数的概念,知道素数的判断方式。然后去遍历就好

3,参考代码:见Example2

第三题:

1,问题描述

给出一个数n,则形成一个一条龙式的n*n矩阵;

(例如:n = 3,则res为下图所示)

1 2 3

6 5 4

7 8 9

2,问题思路

此类问题就是找规律然后去写代码就好,不用最优解,思想越简单越好

3,参考代码:见Example3

第四题:

1,问题描述

(最长子序列)给出一个字符串,得到其最长子序列,并且输出其起始坐标和终止坐标。

2,问题思路

属于动态规划类题目

3,参考代码:暂无

-------------------------END------------------------------

Example 2 素数问题

#include "stdio.h"

int judgeNum(int num){

int i = 2;

while( num > i){

if( num % i == 0){

break;

}

i++;

}

if(i == num){

return 1;

}else{

return 0;

}

}

//主函数

int main(){

int a,i,temA,temB;

while(1){

printf("请输入一个整数:");

scanf("%d",&a);

printf("您输入的数字为:%d\n",a);

if(a < 2)

printf("小于2,请重新输入。\n");

else{

for(i = 2; i <= a/2; i++){

temA = judgeNum(i);

temB = judgeNum(a-i);

if(temA == 1 && temB == 1){

printf("%d + %d = %d\n", i, a-i, a);

}

}

}

}

}

Example 3 矩阵问题

#include

int main()

{

int num,row,line;

printf("请输入一个正整数。\n");

scanf("%d",&num);

for(row = 0; row < num; row++){

if(row % 2 == 0){

for(line = 1; line <= num; line++){

printf("%d ",row*num + line);

}

}else{

for(line = num; line > 0; line--){

printf("%d ",row*num + line);

}

}

printf("\n");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值