面向过程程序设计——循环结构程序设计(2)

N元钱买 N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只, N元钱必须刚好买 N只鸡,而且鸡必须整只买,不能劈开买。

有几种买法呢?这就是N鸡问题。

在一行中输入一个正整数 N。( N<500< code>&#xFF09;<!--500<-->

在一行中输出两个整数 c s,中间用一个空格隔开,表示 N元钱买 N只鸡共有 c 种买法,且所有买法的公鸡数量之和是 s

如果无解,则 s-1.

100
4 24
0 -1

#include<stdio.h>
int main()
{
int N,c=0,s=0;
int gong,mu,xiao;
scanf("%d",&N);
for(gong=0;gong<=n;gong++) { for(mu="0;mu<=N-gong;mu++)" for(xiao="0;xiao<=N-gong-mu;xiao++)" if(gong+mu+xiao="=N&&gong*5+mu*3+xiao/3==N&&xiao%3==0)" c++; s+="gong;" } if(c="=0){" printf("0 -1"); else printf("%d %d",c,s); return 0; }< code></=n;gong++)></stdio.h>

本题目要求读入菱形起始字母和菱形的高度,然后输出空心字符菱形。所谓”空心菱形”是指:每行由两端为字母、中间为空格的字符串构成,每行的字符串中心对齐;上半部分相邻两行字符串长度差2,且字母从给定的起始字母逐一递增;下半部分与上半部分对称。

输入在一行中给出起始字母(范围为英文大写字母A-G)和菱形的高度(为不超过10的奇数)。

输出空心字符菱形。


B 5
  B
 C C
D   D
 C C
  B
#include <stdio.h>
// 1&#x3001;&#x5148;&#x753B;&#x51FA;&#x5B9E;&#x5FC3;&#x83F1;&#x5F62;&#xFF08;&#x628A;&#x83F1;&#x5F62;&#x5206;&#x6210;&#x4E0A;&#x4E0B;&#x4FE9;&#x90E8;&#x5206;&#xFF0C;&#x518D;&#x5206;&#x6210;&#x6B63;&#x4E09;&#x89D2;&#x548C;&#x5012;&#x4E09;&#x89D2; &#xFF09;
// 2&#x3001; &#x628A;&#x8F93;&#x5165;&#x7684;N&#xFF08;n&#x5C42;&#xFF09;&#x5E26;&#x5165;&#x5FAA;&#x73AF;
// 3&#x3001; &#x7528;if&#x8BED;&#x53E5;&#x4F7F;&#x83F1;&#x5F62;&#x4E2D;&#x5FC3;&#x4E3A;&#x7A7A;
// 4&#x3001; &#x5229;&#x7528;ASCII&#x7801;&#x7684;&#x52A0;&#x51CF;  &#x5B9E;&#x73B0;&#x5B57;&#x6BCD;&#x7EC4;&#x6210;
int main()
{
    int n,i,j;
    char c;
    scanf("%c%d",&c,&n);
    //&#x9488;&#x5BF9;&#x5947;&#x6570;&#x5C42;&#x7684;&#x83F1;&#x5F62; &#x4E0A;&#x90E8;&#x5206;
    for(i=1;i<=n 2+1;i++) { 第一个为上班边的倒三角 for(j="n/2;j">=i;j--)
            printf(" ");
        //&#x7B2C;&#x4E8C;&#x4E2A;&#x4E0A;&#x534A;&#x8FB9;&#x7684;&#x6B63;&#x4E09;&#x89D2;
        for(j=0;j<i*2-1;j++) { 菱形中间的空心用if else来实现 if(j="=0" || j="=i*2-2)" printf("%c",c); else printf(" "); } c+="1;" printf("\n"); c-="1;" 下部分 for(i="1;i<=n/2;i++)" 第三个为下半边的正三角 for(j="1;j<=i;j++)" 第四个三角形为倒三角形>=i*2-1;j--)
        {
            if(j==n-2 || j==i*2-1)
                printf("%c",c);
            else
                printf(" ");
        }
        printf("\n");
    }
}
</i*2-1;j++)></=n></stdio.h>

本题的要求很简单,就是求 N个数字的和。麻烦的是,这些数字是以有理数 &#x5206;&#x5B50;/&#x5206;&#x6BCD;的形式给出的,你输出的和也必须是有理数的形式。

输入第一行给出一个正整数 N(≤100)。随后一行按格式 a1/b1 a2/b2 ...给出 N个有理数。题目保证所有分子和分母都在长整型范围内。另外,负数的符号一定出现在分子前面。

输出上述数字和的最简形式 —— 即将结果写成 &#x6574;&#x6570;&#x90E8;&#x5206; &#x5206;&#x6570;&#x90E8;&#x5206;,其中分数部分写成 &#x5206;&#x5B50;/&#x5206;&#x6BCD;,要求分子小于分母,且它们没有公因子。如果结果的整数部分为0,则只输出分数部分。

5
2/5 4/15 1/30 -2/60 8/3
3 1/3
2
4/3 2/3
3
1/3 -1/6 1/8
7/24
#include<stdio.h>
  #include<stdlib.h>
  int gcd(int x,int y)
  {
      return y?gcd(y,x%y):x;
  }
  int main()
  {
      int n,a1,b1,a2,b2,t,p;
     scanf("%d",&n);
     scanf("%d/%d",&a1,&b1);
     n--;
     while(n--)
     {
         scanf("%d/%d",&a2,&b2);
         a1=a1*b2+a2*b1;b1*=b2; //&#x8FDB;&#x884C;&#x901A;&#x5206;
         if(a1<0) p代表正负 a1*="-1,p=-1;" else if(a1="=0)" 分子为0的情况 { b1="1;continue;" } p="1;" t="gcd(a1,b1);" a1="a1*p/t;b1/=t;" if(abs(a1)%b1="=0)" printf("%d\n",a1 b1); 分类讨论输出 if(abs(a1)>=1) printf("%d %d/%d\n",a1/b1,abs(a1)-abs(a1/b1)*b1,b1);
     else printf("%d/%d\n",a1,b1);
 }</0)></stdlib.h></stdio.h>

水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=13+53+33。 本题要求编写程序,计算所有N位水仙花数。

输入在一行中给出一个正整数N(3≤N≤7)。

按递增顺序输出所有N位水仙花数,每个数字占一行。

153
370
371
407
#include <stdio.h>
int pow(int a,int b){
    int i,t=a;
    for(i=1;i<b;i++){ a="a*t;" } return a; int main (){ i,n,n; sum,num; scanf("%d",&n); n="pow(10,N);" for(i="pow(10,N-1);i<n;i++){" num="i;" sum="0;" while(num>0){
            sum=sum+pow(num%10,N);
            num=num/10;
        }
        if(sum==i){
        printf("%d\n",i);
        }
    }
    return 0;
}</b;i++){></stdio.h>

给定一个整数m(50

Original: https://blog.csdn.net/LxinY213/article/details/127818429
Author: Pei213
Title: 面向过程程序设计——循环结构程序设计(2)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/655382/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球