eXCEL如何设置小数点后输入多少个0就显示多少个零。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eXCEL如何设置小数点后输入多少个0就显示多少个零。相关的知识,希望对你有一定的参考价值。

既最后一位是0也显示出来,需要计算数据,所以设置只能是数值格式。

本人跟你交流两种方法。望大家指教。
1、选中单元格——右键“设置单元格格式”——数字“数值”选项。要几位小数都可得出。
2、选中单元格——右键“设置单元格格式”——数字“文本”选项。这种方法便于你输入的时候想写几个0都行。如果最后你要算出结果,你可以把结果的单元格设成数值的形式,也就是第一种方法。两种方法结合使用,效果更明显。
参考技术A 选中所要设置的单元格,点右键,在下拉菜单中选中“设置单元格格式”,再在对话框中选中“数字”,再在复选框中选中“数值”,此时右边会有一个设置小数点位数的框,需要几位就可以设成几 参考技术B 在eXCEL表格中选中你要设置的单元格,点右键,在出来的下拉菜单中选中“设置单元格格式”,再在出来的对话框中选中“数字”,再在下面的框中选中“数值”,此时右边会有一个设置小数点位数的框,需要几位就可以设成几,设好后点确认就OK了。

如何查看一个数字输入了多少次

【中文标题】如何查看一个数字输入了多少次【英文标题】:How to check how many times a number has been entered 【发布时间】:2015-11-20 21:49:35 【问题描述】:

我正在尝试解决我收到的任务表上的一个问题,以帮助我进一步理解课堂上的 C++ 代码。

问题是(我引用):

编写一个程序:

要求用户将 1 到 5 之间的 10 个数字输入一个数组并在屏幕上显示该数组 创建第二个大小为 5 的数组并用零填充它 计算在第一个数组中输入了多少个 1、2、...、5,并将此数字存储在第二个数组中。 显示第二个数组,如下例所示。

问题是如何检查一个数字输入了多少次。我在想一个for 循环,但我写它的方式根本上是不正确的,所以我发现自己很难看到我所犯的错误。也许我错过了一些简单的东西?任何帮助都会很棒。

这是我的(可怕的)for 循环尝试,所以你可以看到我的错误。

#include <iostream>
#include <windows.h>

using namespace std;

int main()

    int input[10];
    const int MAX_NO = 5;
    int COUNT[5] =  0,0,0,0,0 ;
    int count = 10;

    for (int i = 0; i < count; i++)
    
        cout << "Please enter a number for value " << i + 1 << " :";
        cin >> input[i];

        while (input[i] < 1 || input[i] > 5)
        
            cout << "Error: Enter another number between 1 and 5: ";
            cin >> input[i];
        
    

    cout << endl << "You entered ";

    for (int i = 0; i < count; i++)
    
        cout << input[i] << " ";
    

    cout << "\n";
    // show how many times 1 number appears 

    for (int i = 1; i <= 5; i++)
    
        if (input[i] == i)
        
            COUNT[i]++;
        
    


    for (int i = 0; i < MAX_NO; i++)
    
        cout << i + 1 << " appears " << COUNT[i]
             << " times in the input" << endl;
    
    cout << endl;

    system("pause");
    return 0;

【问题讨论】:

【参考方案1】:

COUNT[ input[i]-1 ]++;

在您的第一个循环中(验证后)。一旦你这样做了,你就不需要第二个循环来计算结果。

这是由内而外的,首先获取input[i] 是什么,然后使用它来修改COUNT 数组中的(input[i]-1)'th 位置。如果用户在循环的第一次运行时输入 4,那么 i == 0input[i] == 4。由于数组是从 0 开始的,它将递增 COUNT[input[i]-1],在本例中为 COUNT[4-1] == COUNT[3]

在您的初始循环运行后,1 的数量将在 COUNT[0] 中,2 的数量将在 COUNT[1] 中,依此类推。

【讨论】:

我删除了我的消息纯粹是因为我没有正确阅读您的消息。很抱歉,这是漫长的一天,非常感谢您在编辑并解释后我更好地理解了您的逻辑。是的,我可以看到你是如何做到的。谢谢。【参考方案2】:
#include <iostream>
#include <windows.h>
using namespace std;
int main()

//declare a constant values
int input[10];
int count = 10;  //all constant MUST be in capital letters

//second array filled with zeros
const int MAX_NO = 5;   
int COUNT[5] =  0, 0, 0, 0, 0 ;

//ask user for 10 input values
for (int i = 0; i < count; i++)

    cout << "Please enter a number for value " << i + 1 << " :";
    cin >> input[i];
    //check if input numbers are between 1 and 5 inclusive
    while (input[i] < 1 || input[i] > 5)
    
        cout << "Error: Enter another number between 1 and 5: ";
        cin >> input[i];
    
    /* show how many times 1 number appears.
    this section should be in the main loop which would enable the program to check how many times a
    number is entered so that it is stored in the second array. changed i to secondCount because this is the counting index of the second array not the first which you've called i (one of the reason you'd all zero as output when u ran your code)*/

    for (int secondCount = 1; secondCount <= MAX_NO; secondCount++)  
    
        if (input[i] == secondCount)
        
            COUNT[secondCount-1]+= 1;    //use minus 1 from i and increment. += 1 is the same as COUNT++
        
    


//display number entered in the first array
cout << endl << "You entered ";

for (int i = 0; i < count; i++)

    cout << input[i] << " ";


cout << "\n";

//display how many times a number is entered.

for (int secondCount = 0; secondCount < MAX_NO; secondCount++)

    cout << secondCount + 1 << " appears " << COUNT[secondCount]
        << " times in the input" << endl;

cout << endl;

system("pause");
return 0;

输出:

Please enter a number for value 1 = 1
Please enter a number for value 2 = 1
Please enter a number for value 3 = 1
Please enter a number for value 4 = 2
Please enter a number for value 5 = 3
Please enter a number for value 6 = 2
Please enter a number for value 7 = 4
Please enter a number for value 8 = 4
Please enter a number for value 9 = 3
Please enter a number for value 10 = 2

You entered: 1 1 1 2 3 2 4 4 3 2 

1 appears 3 times in the input
2 appears 3 times in the input
3 appears 2 times in the input
4 appears 2 times in the input
5 appears 0 times in the input

【讨论】:

【参考方案3】:
for (int i = 1; i <= 5; i++)

    if (input[i] == i)
    
        COUNT[i]++;
    

让我们看看它在做什么。首先检查input[1]。 (这应该是input[0],因为数组索引从 0 开始)。然后检查input[1] 是否等于1。如果是,则增加COUNT[1]。 接下来,它检查input[2]。然后它检查input[2] 是否等于2。如果是,它增加COUNT[2]。以此类推,直到它通过input[5]。 你看到这个问题了吗?您只检查前 5 个输入,并且只根据单个值检查它们。

【讨论】:

是的,我知道我做错了什么,我确实在描述中说明了它,我只是认为我最好把它留在里面,这样人们就知道我此时此刻在想什么去做,即使我知道它不正确 你说你知道循环是错误的,它就是。但这是否更好地说明了为什么它是错误的?您需要检查输入中的每个值(因此从 0 循环到 9)并增加正确的位置。 是的,你解释的方式是我在输入断点并在代码运行时跟随代码时得出的结论。

以上是关于eXCEL如何设置小数点后输入多少个0就显示多少个零。的主要内容,如果未能解决你的问题,请参考以下文章

EXCEL中整列数字,如何不显示小数点后的0?

EXCEL怎么让小数后两位显示0

怎么让产生有小数点数据自动变成进一位的整数,不管小数点后面是多少,都进一位

excel小数怎么取整?

Excel表中。超过15位数以上的数字。会被转换成科学计数法。有没有啥办法让他正常显示??前面加逗号啥

EXCEL怎么让小数后两位显示0