标题:C语言考试大纲(教学材料都在大纲里面)--求大家一起合力把答案和讨论写在这里 ...
只看楼主
neebla
Rank: 2
等 级:论坛游民
帖 子:16
专家分:29
注 册:2016-12-8
得分:3 
/*
17.    设一个三位数可以表示为abc,若其能满足条件a3+b3+c3=abc,则称其为水仙花数,编程求出所有的水仙花数。
*/

#include <stdio.h>

int main() {
    int a,b,c,i,k;
    for(i=100;i<1000;i++) {
        a=i/100;
        b=(i/10)%10;
        c=i%10;
        k = pow(a,3)+pow(b,3)+pow(c,3);
        if(k == i) {
            printf("%d ",i);
        }
    }
}
2016-12-11 16:11
zzdloveclp
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:108
注 册:2016-11-25
得分:3 
32.编写一个函数,实现计算并返回一个整数的平方(或立方)。
#include<stdio.h>
int main()
{
    int pingfang_(int x);
    int lifang_(int y);
    int a;
    printf("请输入a的值:");
    scanf("%d",&a);
    printf("a*a=%d,a*a*a=%d\n",pingfang_(a),lifang_(a));
    return 0;
}
int pingfang_(int x)
{
    return(x*x);
}
int lifang_(int y)
{
    return(y*y*y);
}
2016-12-11 17:26
zzdloveclp
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:108
注 册:2016-11-25
得分:3 
31.请编写一个函数 unsigned fun ( unsigned w ),w 是一个大于10的无符号整数,若 w 是 n (n ≥ 2)位的整数,函数求出w的低 n-1位的数作为函数值返回。例如:w 值为 5923,则函数返回 923; w 值为 923 则函数返回 23。
//只能输出不是0的位置,例如923输出23,但是9023也只能输出23,0输出不了,不知道怎么改!
#include<stdio.h>
int main()
{
    unsigned fun(unsigned w);
    unsigned a;
    printf("请输入整数:");
    scanf("%u",&a);
    if(a>=10)
    printf("%d\n",fun(a));
    return 0;
 }
 unsigned fun(unsigned w)
 {
     unsigned s=0,s1=1,i=0;
     while(w>=10)
     {
         if(w/10)
         {
             i=w%10;
             s=s+i*s1;
             s1=s1*10;
             w=w/10;
         }
         }
         return(s);
 }
2016-12-11 18:39
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:3 
第24题这么写 如何???
程序代码:
#include <stdio.h>

//请编写函数fun, 函数的功能是: 将M行N列的二维数组中的字符数据, 按列的顺序依次放到一个字符串中。

void f(char* dest,char* source,int m,int n)
{
    for(int i=0;i<m*n;i++,++dest) *dest=source[(i%m)*n+i/m];
}


int main()
{

   char t[5][8]={{'a','f','k','p','u','1','6','!'},
                 {'b','g','l','q','v','2','7','@'},
                 {'c','h','m','r','w','3','8','#'},
                 {'d','i','n','s','x','4','9','$'},
                 {'e','j','o','t','y','5','`','%'}};
  
   char s[41]={"\0"};
   f(s,&t[0][0],5,8);
   printf("%s\n",s);
   return 0;
}




[此贴子已经被作者于2016-12-11 21:25编辑过]

收到的鲜花
  • 九转星河2016-12-13 04:17 送鲜花  5朵   附言:我很赞同

DO IT YOURSELF !
2016-12-11 19:37
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
回复 44楼 wp231957
简单又有成效

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-13 04:11
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
如果其他题型没有人做,那就留到以后以后有时间再慢慢补充吧(也许要到过年才行)~或者,直接无视算了~反正自我感觉实用性不是很高~离系统结贴时间不远了,要分分了……最好在此之前把编程题全部解决掉~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-13 04:22
neebla
Rank: 2
等 级:论坛游民
帖 子:16
专家分:29
注 册:2016-12-8
得分:3 
程序代码:
/*
30.    请编写函数fun,函数的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。
*/
#include <stdio.h>
#include <stdlib.h>

fun(int s[10]) {
    int max = 0, i, second = 0;
    for (i = 0; i<10; i++) {
        if (s[i]>max) {
            max = s[i];
            s[i] = s[0];
            s[0] = max;
        } 
        if (s[i]>second&& s[i]<max) {
            second = s[i];
            s[i] = s[1];
            s[1] = second;
        }
    }
}
int main()
{
    int t[10], i;
    for (i = 0; i<10; i++) {
        scanf("%d", &t[i]);
    }
    fun(t);
    for (i = 0; i<10; i++) {
        printf("%d ", t[i]);
    }

}
2016-12-13 18:36
somber_code
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-12-9
得分:0 
很好
2016-12-13 22:17
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
最新通知

基于时间和人力资源问题,本人打算把编程应用题1-32做完就结了~
现在还差题号:19 20 21 22 23 25 26 28 29

有没有愿意贡献一下的~没有就拉倒了~~

至于其他题型,就让它闲置去吧~

[此贴子已经被作者于2016-12-14 02:40编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-14 01:42
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
好吧,我就贡献一下第19题吧

19.    将数组a[10]逆序存放。

程序代码:
#include <stdio.h>
#define N 10
int main()
{
    int t,i,a[N]={0,1,2,3,4,5,6,7,8,9};

    for(i=0;i<N;i++)
    {
         printf("a[%d]=%-12d",i,a[i]);
         if(i%3==0)
             printf("\n");
    }

    printf("\n");

    for(i=0;i<=(N-1)/2;i++)
    {
        t=a[i];
        a[i]=a[N-1-i];
        a[N-1-i]=t;
    }

    for(i=0;i<N;i++)
    {
        printf("a[%d]=%-12d",i,a[i]);
        if(i%3==0)
            printf("\n");
    }

    printf("\n");

    return 0;
}


[此贴子已经被作者于2016-12-14 01:56编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-14 01:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-472217-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.988756 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved