专业课真题复习(2018)

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: 专业课真题复习(2018)

1.题目描述:

输出所有的“水仙花数”,所谓“水仙花数”是指一个三维数,其各位数字的立方和等于该数本身。例如,153是一水仙花数,因为153=111+555+333

代码:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
  int b,s,g;
  int i;
  for(i=100;i<=999;i++)
  {
    b=i/100;
    s=(i-b*100)/10;
    g=i%10;
    if((b*b*b+s*s*s+g*g*g)==i)
    {
      printf("%d\n",i);
    }
  }
  return 0;
}

2.题目描述:

用选择法对10个整数排序

#include<stdio.h>
int main(void)
{
  int arr[10]={10,9,8,7,6,5,4,3,2,1};
  int i,j;
  int min,temp;
  for(i=0;i<10;i++)
  {
    min=i;
    for(j=i+1;j<10;j++)
    {
      if(arr[min]>arr[j])
      {
        min=j;
      }
    }
    if(min!=i)
    {
      temp=arr[min];
      arr[min]=arr[i];
      arr[i]=temp;
    }
  }
  printf("排序后的数组为:\n");
  for(i=0;i<10;i++)
  {
    printf("%d",arr[i]);
  }
  return 0;
}

注意:每次找到一个最小的应该和i交换,不是和j交换。。

3.题目描述:

编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
  int english=0;
  int space=0;
  int number=0;
  int other=0;
void count( char *str)
{
    int i;
  for(i=0;i<strlen(str);i++)
  {
    if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
    {
      english++;
    }else if(str[i]==' ')
    {
      space++;
    }else if(str[i]>='0'&&str[i]<='9')
    {
      number++;
    }else{
      other++;
    }
   } 
 } 
int main(void)
{
  char str[100];
  gets(str);
  count(str);
   printf("英文字母的个数为%d\n",english);
   printf("空格的个数为%d\n",space);
   printf("数字的个数为%d\n",number);
     printf("其他字符的个数为%d\n",other);   
  return 0;
}

注意:仔细审题,在主函数输出数据。

4.题目描述:

有两个磁盘文件“A"和”B“,各存放一行字母,现要求编写程序实现,把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件"C"中去。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
  FILE *fa,*fb,*fc;
  int i,j;
  char a[100];
  char b[100];
  char temp;
  if((fa=fopen("A.txt","r"))==NULL)
  {
    printf("can not open this file.");
    exit(0);
  }
  fgets(a,100,fa);  
  fclose(fa);
  if((fb=fopen("B.txt","r"))==NULL)
  {
    printf("can not open this file.");
      exit(0);
  }
  fgets(b,100,fb);
  fclose(fb);
  strcat(a,b);
  for(i=0;i<strlen(a)-1;i++)
  {
    for(j=0;j<strlen(a)-1-i;j++)
    {
      if(a[j]>a[j+1])
      {
        temp=a[j];
        a[j]=a[j+1];
        a[j+1]=temp;
      }
    }
  }
  fclose(fb);
  if((fc=fopen("C.txt","w"))==NULL)
  {
    printf("can not open this file.");
      exit(0);
  }
  fputs(a,fc);
  fclose(fc);
  return 0;
}

注意:

1.打开文件要关闭

2. strcmp()字符串比较函数

3. strcat()字符串拼接函数

4. strcpy()字符串拷贝函数,后面的字符串会覆盖掉前边的字符串,这不是拼接函数。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
存储 算法 C语言
复习【数据结构与算法】
复习【数据结构与算法】
137 0
|
7月前
|
测试技术
蓝桥杯刷题|03入门真题
蓝桥杯刷题|03入门真题
|
7月前
|
测试技术
蓝桥杯刷题|01入门真题
蓝桥杯刷题|01入门真题
|
7月前
|
测试技术
蓝桥杯刷题|02入门真题
蓝桥杯刷题|02入门真题
|
7月前
|
存储 安全 Java
复习总结01110
复习总结01110
|
7月前
|
存储 数据库
复习总结0111
复习总结0111
|
7月前
|
缓存 前端开发 JavaScript
【面试题】2022前端面试真题
【面试题】2022前端面试真题
|
7月前
|
存储 网络协议 测试技术
复习软考之精读真题题解,猜猜这是哪年的真题吧
复习软考之精读真题题解,猜猜这是哪年的真题吧
46 0
专业课真题复习(2017)
专业课真题复习(2017)
86 0
专业课真题复习(2021)
专业课真题复习(2021)
121 0