校内一(1)

来源:互联网 发布:手机淘宝购买运费险 编辑:程序博客网 时间:2024/04/30 15:17

一、下列程序的功能是:输入一个英文字母,输出该字母在26个英文字母中的序号。例如,输入‘A’或者‘a’时,输出都是1,输入‘Z’或者‘z’时,输出都是26。已知‘A’的ASCII码值为65,‘a’的ASCII码值为97。

#include<iostream.h>void main(){    char ch;    cin>>ch;    if(ch>='A'&&ch<='Z')        ch=ch+32;    cout<<ch-96<<endl;}

或者

#include<iostream.h>void main(){    char ch;    cin>>ch;    if(ch>='a'&&ch<='z')        ch=ch-32;    cout<<ch-64<<endl;}

二、下列程序的功能是:输入一个三位的八进制整数(100-777之间的数),将其对应的二进制串输出。例如,输入“720”,输出为“111010000”。

#include<iostream.h>#include<string.h>void main(){    int num8;    char str2[8][4]={"000","001","010","011","100","101","110","111"};    cin>>num8;    cout<<str2[num8/100];    cout<<str2[num8%100/10];    cout<<str2[num8%10]<<endl;}

拓展为四位十六进制

#include<iostream.h>#include<string.h>void main(){    int i;    char str[16][5]={"0000","0001","0010","0011","0100","0101","0110","0111","1000","1001","1010","1011","1100","1101","1110","1111"};    cin>>i;    cout<<str[i/1000];    cout<<str[i%1000/100];    cout<<str[i/100/10];    cout<<str[i%10]<<endl;}

三、下列程序的功能是:读入一个长度在100以内的字符串,求该字符串中各字符的ASCII码之和。例如“ABC”ASCII码之和为198。

#include<iostream.h>void main(){    int sum;    char str[100];    cin>>str;         sum=0 ;    for(int i=0;str[i];i++)        sum+=str[i];    cout<<sum<<endl;}

四、神秘的五位数。有这样一个五位的十进制整数,组成它的5个数字阶乘之和等于他本身。即abcde=a!+b!+c!+d!+e!请写程序搜索这样的5位数,输出找到得所有神秘五位数并统计这样的数共有多少个。

#include<stdio.h> int main() {     int JC[] = {1,1,2,6,24,120,720,5040,40320,362880};     int i;     for(i=10000;i<100000;i++)     {      int sum=0;      int x=i;      while(x>0)      {       sum+=JC[x%10];       x /= 10;      }      if(i==sum) printf("%d\n", i);     }     return 0; }

五、判断一个数是否为素数。

#include<stdio.h> int main() {    int i;    int x;    int isprime=1;    scanf("%d",&x);    for(i=2;i<x;i++)    {        if(x%i==0)        {            isprime=0;            break;        }    }    if(isprime==1)    {        printf("%d是素数",x);    }    else    {        printf("%d不是素数",x);    }     return 0; }
原创粉丝点击