C语言刷题系列——3.a+aa+...+aaa..aa表达式输出

简介: C语言刷题系列——3.a+aa+...+aaa..aa表达式输出

一、 题目要求



二、步骤


1.总体分析

输入两个正整数,第一个是“要打印出来的”,第二个是“个数”。

这样我们可以分两种情况:①当第二个输入的数字为1时,输出的结果就是n = n

②当大于1时,则需要循环,循环要求每次把上次循环的数*10再加上第一次输入的那个数即可。由于“+”比等号左边的个数少一个,所以打印最后一个数的时候,不同时打印“+”


2.框架:输入两个数(中间的实现略)最后打印

还需再创建一个变量t,用来存第一次输入的值(用于上面②中每次循环最后加上的内个数)

#include<stdio.h>
int main()
{
  int a, n,;
  int sum = 0;
  int t;
  scanf("%d%d", &a, &n);
  t = a;
        if (n == 1)
      {
    printf("%d", t);
    }
  else//即n>1时
  {
      //这里n>1时,要输出“+”
      //并求出所有数相加,即“=”右边的值 sum
        }
  //最后输出“=***”
  printf("=%d",sum);
  return 0;
  }


3.n>1时 (else内部)

“=”左边总共有n个数相加,只有最后一个数最后直接输出这个数即可,对于前面的,输出每个数的时候要在其后面接上“+”

for (int i = 1; i < n; i++)
    {
    if (i == 1)
    {
    printf("%d+", a);
    }
    a = a * 10 + t;//因为for里循环的次数的n-1
    sum += a;
    if (i < n - 1)
    {
      printf("%d+", a);
    }
    else
    {
      printf("%d", a);
    }
    }
  sum = sum + t;


4.在最前面加上“判断输入的为整数”

if(a>0&&n>0)

5.最终代码

#include<stdio.h>
int main()
{
  int a, n,;
    int sum = 0;
  int t;
  scanf("%d%d", &a, &n);
  t = a;
  if (a > 0 && n > 0)
  {
  if (n == 1)
  {
    printf("%d", t);
  }
  else
    for (int i = 1; i < n; i++)
    {
    if (i == 1)
    {
      printf("%d+", a);
    }
    a = a * 10 + t;
    sum += a;
    if (i < n - 1)
    {
      printf("%d+", a);
    }
    else
    {
      printf("%d", a);
    }
    }
  sum += t;
  printf("=%d", sum);
  }
  return 0;
}
相关文章
|
C语言
【C语言刷题系列】合并两个有序数组
【C语言刷题系列】合并两个有序数组
|
存储 C语言
【C语言】基础刷题训练4(含全面分析和代码改进示例)
【C语言】基础刷题训练4(含全面分析和代码改进示例)
327 1
|
C语言
【C语言刷题系列】删除公共元素
【C语言刷题系列】删除公共元素
|
存储 C语言
【C语言刷题系列】对数字添加逗号
【C语言刷题系列】对数字添加逗号
|
人工智能 Java 程序员
一文彻底搞定C语言的表达式和语句
本文介绍了C语言中的表达式和语句,涵盖算术、关系等表达式及各类语句的用法,帮助初学者理解核心概念。本文介绍C语言表达式(算术、关系等)和语句(表达式、复合、控制、函数、空语句),助你掌握核心概念。
1155 0
一文彻底搞定C语言的表达式和语句
|
C语言
【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
这份文档详细介绍了编程任务的多个关卡,涵盖C语言的基础知识和应用。主要内容包括: 1. **目录**:列出所有关卡,如`print函数操作`、`转义字符使用`、`数的向上取整`等。 2. **各关卡的任务描述**:明确每关的具体编程任务,例如使用`printf`函数输出特定字符串、实现向上取整功能等。 3. **相关知识**:提供完成任务所需的背景知识,如格式化输出、算术运算符、关系运算符等。 4. **编程要求**:给出具体的代码编写提示。 5. **测试说明**:包含预期输入输出,帮助验证程序正确性。 6. 文档通过逐步引导学习者掌握C语言的基本语法和常用函数,适合初学者练习编程技能。
477 1
C语言------运算符与表达式
这篇文章是C语言运算符与表达式的实训教程,通过多个示例程序展示了如何使用算术运算符、关系运算符、逻辑运算符以及条件语句来解决实际问题,并介绍了如何通过函数库简化复杂数学运算。
C语言------运算符与表达式
|
程序员 C语言
【C语言基础考研向】06运算符与表达式
本文介绍了C语言中的运算符分类、算术运算符及表达式、关系运算符与表达式以及运算符优先级等内容。首先概述了13种运算符类型,接着详细说明了算术运算符的优先级与使用规则,以及关系运算符和表达式的真假值表示,并给出了C语言运算符优先级表。最后附有课后习题帮助巩固理解。
539 10
|
C语言
C语言程序设计核心详解 第二章:数据与数据类型 4种常量详解 常见表达式详解
本文详细介绍了C语言中的数据与数据类型,包括常量、变量、表达式和函数等内容。常量分为整型、实型、字符型和字符串常量,其中整型常量有十进制、八进制和十六进制三种形式;实型常量包括小数和指数形式;字符型常量涵盖常规字符、转义字符及八进制、十六进制形式;字符串常量由双引号括起。变量遵循先定义后使用的规则,并需遵守命名规范。函数分为标准函数和自定义函数,如`sqrt()`和`abs()`。表达式涉及算术、赋值、自增自减和逗号运算符等,需注意运算符的优先级和结合性。文章还介绍了强制类型转换及隐式转换的概念。
1000 2
|
机器学习/深度学习 编译器 C语言
C语言刷题(中)(保姆式详解)
C语言刷题(中)(保姆式详解)
222 0